SBU-BMI / quip_distro

BSD 3-Clause "New" or "Revised" License
29 stars 16 forks source link

Configure httpd.conf? #331

Open IPorth opened 1 year ago

IPorth commented 1 year ago

Hi, I would really like to use quip to view and analyze til classification heatmaps but I’m struggling with the setup. Would it be possible to get more information about what to do at step 4 “Configure httpd.conf with your certificates to enable https”? Which certificates are required and where do I have to insert them? I’m quite new in this field and appreciate any help a lot. Thank you very much in advance!

birm commented 1 year ago

Hello,

Strictly speaking, enabling HTTPS is optional, but it's highly recommended for any public facing instance. This is an apache httpd configuration, so following a tutorial such as this one would be helpful to get the required ssl certificate files. Then, put them in the config directory and uncomment and change the configuration lines here to match your files.

IPorth commented 1 year ago

Hello again, Thank you very much for the fast answer, it was very helpful. I successfully build and run quip and accessed it via localhost. To test the functions I created a collection and uploaded the sample image (sample.svs) using the manifest.csv (/data/pathdb/wsi/manifest.csv) with the imageloader code (No warning or error occured). However, when I try to open the image in the collection I get “requested page not found” or the camicroscope message “something wrong with this slide”. How can I fix this?

birm commented 1 year ago

Sorry, this slipped off my radar. If you can, see if you can grab the ".dzi" call from the network tab of the developer console of your web browser. You'll probably have to persist the network logs.

IPorth commented 1 year ago

The .dzi shows: /data/images/ is neither a file nor part of an image sequence Here is also a screenshot of the headers of the .dzi. Thank you for your help! screenshot_dzi :

birm commented 1 year ago

Can you get the results of ./Data/slide/find ? It looks like there's no location/filepath.

IPorth commented 1 year ago

When I open http://localhost/caMicroscope/Data/slide/find it says "The requested page could not be found" In the Network tabs I could only find /data/Template/find.. How could I add the location/filepath?

birm commented 1 year ago

Oh, I forgot that it's case sensitive. Can you try the "Template" url but replace it with "Slide"?

IPorth commented 1 year ago

When I open http://localhost/caMicroscope/data/Slide/find there is just "[ ]"

birm commented 1 year ago

Ah, this is also my mistake. Since you're using pathdb, your url should contain a number as a slideid. Can you try this url, replacing <> with that number?

http://localhost/node/<>?_format=json

IPorth commented 1 year ago

Results in this: {"message":"The \u0022node\u0022 parameter was not converted for the path \u0022\/node\/{node}\u0022 (route name: \u0022rest.entity.node.GET\u0022)"} ..If the number is the Subject ID I gave to it? is that correct? so: http://localhost/node/sample?_format=json or for my own slide http://localhost/node/19_25847_3-5_HE_2?_format=json

birm commented 1 year ago

You'll need to use the pathdb internal slide id; for example, note https://pathdb.cancerimagingarchive.net/caMicroscope/apps/viewer/viewer.html?slideId=21555&mode=pathdb

The slide id here is 21555; this is pathdb's internal slide id. The slide metadata call is https://pathdb.cancerimagingarchive.net/node/21555?_format=json

IPorth commented 1 year ago

ok, thanks! Seems like the slide ID is 3 and this is the result of http://localhost/node/3?_format=json: {"nid":[{"value":3}],"uuid":[{"value":"d9f8205d-ba6c-4e07-8d4b-392c4009e24f"}],"vid":[{"value":7}],"langcode":[{"value":"en"}],"type":[{"target_id":"wsi","target_type":"node_type","target_uuid":"a9452183-ddf2-4593-a80a-16f1b17a9afb"}],"revision_timestamp":[{"value":"2022-07-20T10:09:59+00:00","format":"Y-m-d\TH:i:sP"}],"revision_uid":[{"target_id":1,"target_type":"user","target_uuid":"5a4a9ef5-57fb-4c95-802c-5b21c0291281","url":"\/user\/1"}],"revision_log":[],"status":[{"value":true}],"uid":[{"target_id":1,"target_type":"user","target_uuid":"5a4a9ef5-57fb-4c95-802c-5b21c0291281","url":"\/user\/1"}],"title":[{"value":"19_25847_3-5_HE_2.svs"}],"created":[{"value":"2022-07-20T10:09:59+00:00","format":"Y-m-d\TH:i:sP"}],"changed":[{"value":"2022-07-20T10:10:24+00:00","format":"Y-m-d\TH:i:sP"}],"promote":[{"value":false}],"sticky":[{"value":false}],"default_langcode":[{"value":true}],"revision_translation_affected":[],"moderation_state":[{"value":"published"}],"path":[{"alias":null,"pid":null,"langcode":"en"}],"acquisitiondatetime":[],"clinicaltrialsubjectid":[{"value":"19_25847_3-5_HE_2"}],"field_bulk_upload":[],"field_collection":[{"target_id":2,"target_type":"taxonomy_term","target_uuid":"16a4be7a-7b48-4f66-b7ec-44475c9aec73","url":"\/taxonomy\/term\/2"}],"field_iip_path":[{"value":"\/data\/images\/"}],"field_utarget":[{"value":"private:\/\/wsi\/..\/pathdb\/wsi\/19_25847_3-5_HE_2.svs"}],"field_wsiimage":[{"target_id":3,"display":true,"description":"","target_type":"file","target_uuid":"8b47e98d-59ba-4c6f-a859-26770d8e3113","url":"http:\/\/localhost\/system\/files\/wsi\/%2E%2E\/pathdb\/wsi\/19_25847_3-5_HE_2.svs"}],"imagedvolumeheight":[{"value":50751}],"imagedvolumewidth":[{"value":177287}],"imageid":[{"value":"19_25847_3-5_HE_2"}],"lossyimagecompression":[],"lossyimagecompressionmethod":[],"lossyimagecompressionratio":[],"manufacturer":[],"md5":[],"patientid":[],"referencepixelphysicalvaluex":[{"value":0.2523}],"referencepixelphysicalvaluey":[{"value":0.2523}],"studyid":[{"value":"test1"}]}

birm commented 1 year ago

It looks like it's set field_iiip_path[0].value to the directory not including the file. That field is where caMicroscope tries to open the file from. Unfortunately, I don't know how to edit that field personally. Do you have the slide manifest you used for quip-imageloader?

Additionally, looking into this has made me realize that I forgot to completely roll back a feature that had some issues. If you can, try rebuilding the back service via docker-compose -f quip-pathdb.yml build back

IPorth commented 1 year ago

Yes, I have the slide manifest files. I used the example manifest.csv for the sample.svs and for my own testfile it looks similar to the example manifest.csv All manifest files and svs are located in /quip_distro/data/pathdb/wsi. When I try to add a complete path to the svs name in the column path, an error occures with file not found.

I rebuild the back service, but it had no effect on the problem.

ebremer commented 1 year ago

@IPorth "All manifest files and svs are located in /quip_distro/data/pathdb/wsi" this may be the problem. You need to put them in /quip_distro/data/images (assuming your quip_distro is located in /quip_distro) not "/quip_distro/data/pathdb/wsi". Which is an internal system location that the docker system maps to. Once you have relocated your images, run the loader again. Use a different collection name for the new load.