archivematica / Issues

Issues repository for the Archivematica project
GNU Affero General Public License v3.0
16 stars 1 forks source link

Feature: show post store callback results and allow retries #881

Open jraddaoui opened 5 years ago

jraddaoui commented 5 years ago

Please describe the problem you'd like to be solved. It's hard to know if a post store callback succeeded for a package in the SS and there isn't a mechanism to re-execute a callback if needed.

Describe the solution you'd like to see implemented. I'd like to see a section in the SS GUI where post store callback results are displayed, ideally with a retry button to execute them again on demand.

Describe alternatives you've considered. Email notification to administrator(s) on callback failure to let them handle the error directly with the customer.

Additional context


For Artefactual use: Please make sure these steps are taken before moving this issue from Review to Done:

photomedia commented 3 years ago

If/when the post-store AIP callback fails in certain ways, it fails silently, without any feedback on any of the web interfaces (storage controller or the dashboard). There is only a record of the failure in the log of the storage service. It would be best to signal the failure/error on the dashboard and/or storage controller interface.

Here is an example of an error that prevents the callback service from sending the HTTPS request, when the following error occurs, it is only reported in the log at:

/var/log/archivematica/storage-service

The log of the error (replaced name of our domain with [domain] in the output below):

INFO 2020-11-13 07:11:30 locations.models.package:package:run_post_store_callbacks:1498: Executing post_store_aip callback: https://[domain]/id/archivematica/6 ERROR 2020-11-13 07:11:30 locations.models.package:package:run_post_store_callbacks:1501: Error in post_store_aip callback: HTTPSConnectionPool(host='[domain], port=443): Max retries exceeded with url: /id/archivematica/6 (Caused by SSLError(SSLError("bad handshake: Error([('SSL routines', 'tls_process_server_certificate', 'certificate verify failed')],)",),))

This error means HTTPS request was never sent to the receiving server, so it would be very difficult (impossible?) to detect this failed attempt on the receiving server.