-
Notifications
You must be signed in to change notification settings - Fork 531
Add optional logging of requests for non-existent/non-public PIDs #11601
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add optional logging of requests for non-existent/non-public PIDs #11601
Conversation
pdurbin
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall, this looks ok (I didn't test it) but @qqmyers please feedback in this review.
|
|
||
|
|
||
| ; | ||
|
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm just adding this at the end...
https://jenkins.dataverse.org/job/IQSS-Dataverse-Develop-PR/job/PR-11601/3/testReport/junit/edu.harvard.iq.dataverse.api/DataverseFeaturedItemsIT/testCreateFeaturedItemWithBadDvOdbjectIds/ is failing with a 500 error. Can you please merge the latest from develop and see if tests pass?
pdurbin
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I haven't tested this PR myself but I'm approving it because I think it's ready for manual testing.
@ofahimIQSS please don't merge until the Jenkins issues you identified have been resolved:
This PR is failing with this one:
TASK [dataverse : download and unzip solr] *************************************
client_loop: send disconnect: Broken pipe
|
looks good, merging |
What this PR does / why we need it: When users share PIDs from draft datasets/files or share a URL to a dataset/file page with issues such as a trailing '.' character, they get a 404 response but there is no easy way for admins to track these cases. This PR adds a capability to log such failure, optionally enabled by a new Feature Flag, that collects these events. The result can be used with the pidreport.py Python script at gdcc/dataverse-recipes#26 and cron to send monthly alerts to Dataverse admins/curators.
Which issue(s) this PR closes:
Special notes for your reviewer:
Suggestions on how to test this: Turn the flag on, request some non-existent datasets/files by PID using the JSF interface and/or API and verify that you see a new PIDFailures_.log file recording those failures.
Does this PR introduce a user interface change? If mockups are available, please link/include them here:
Is there a release notes update needed for this change?:
Additional documentation: