Workaround for AIA data processing because of JSOC outage

JSOC servers were significantly impacted by flooding on 2024-11-26. Aiapy functions for updating pointing and retrieving degradation tables, which rely on these servers, now throw the following error:

    353     obj, end = self.scan_once(s, idx)
    354 except StopIteration as err:
--> 355     raise JSONDecodeError("Expecting value", s, err.value) from None
    356 return obj, end

JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Are there alternative methods to preprocess AIA images, without the use of JSOC servers, since it is not clear when they will be back online and I am running out of time for my project.

Hello @Ziyaan,

I am in the process of adding offline support to many of the calibration methods in aiapy.
Note that some of these will produce worse outcomes than the JSOC values.

I hope to get it out later this week.

1 Like

That would be great, please update this thread when the update is out and info on how to use the functions in offline mode.
Thank you so much.

Hello @Ziyaan,

Sorry for the late reply! I just released aiapy 0.10, so you will have to upgrade.

To work around the JSOC downtime, I had to break a bunch of code. Basically I separated the fetching of the data from the main calibration functions and created some utility functions to get the data required.

The changelog outline the changes: Full Changelog β€” aiapy 0.10.0 documentation

For prepping level 1 to 1.5, the example has been updated. Registering and aligning level 1 data β€” aiapy 0.10.0 documentation to showcase how it is handled with the new API.

The JSOC is kind of back, so most of the metadata calls now work as before but you still can not get any data at the moment. So it’s possible that aiapy 0.9 / your current code will just work again.

If you have any questions or have any problems, please let me know.

Cheers,
Nabil