distl/dials apache server

Introduction

Follow these instructions to install an apache webserver configured to run the distl and dials spotfinders. For more information on the distl spotfinder server, see http://cci.lbl.gov/labelit/html/client_server.html. The version described here allows the beamline operator to use either distl or the dials spotfinder to assess the quality of single images, typically during a raster scan of a crystal cluster. Use of the apache server allows automatic load balancing and scaling of many parallel requests, typical for a high throughput environment.

These instructions were valid on 06/07/16 on CentOS 7 using apache version 2.4.20, mod_python version 3.5.0 and the apache dependencies ‘apr’, version 1.5.2 and ‘apr-util’, version 1.5.4.

Build instructions

These instructions include downloading apache directly from their webpage. The apache maintainers ask that users use a mirror. Your closest mirror can be found by visiting this web page: http://www.apache.org/dyn/closer.cgi/httpd

Detailed instructions:

The following command will download, configure and compile cctbx, distl and dials, then configure, build and install apache, its dependencies, and mod_python. This takes about an hour.

  • ./apache/apache_install_dials.csh

After the build is complete, instructions for starting the server and testing it will be displayed. You may also want to modify the processor defaults stored in the mpm_prefork_module key in apache/httpd/conf/extra/httpd-mpm.conf to better suit your server capabilities.

Testing the server

These tests assume the files are accessible by the machine hosting the apache server processes.

Test the distl server with a cbf image: curl “http://localhost:8125/spotfinder/distl.signal_strength?distl.image=/net/cci/dials/from_sunbird/sauter/rawdata/pilatus/ssrl_P6/all/I3_1_0001.cbf&distl.res.outer=3.3&distl.bins.verbose=True

Test the dials server with a cbf image: curl “http://localhost:8125/spotfinder/dials.find_spots?file_name=/net/cci/dials/from_sunbird/sauter/rawdata/pilatus/ssrl_P6/all/I3_1_0001.cbf&stats=True&spotfinder.filter.d_min=3.3

Test the dials server with an Eiger image: curl “http://localhost:8125/spotfinder/dials.find_spots?file_name=/net/cci/dials/dectris/eiger16MNov2015/2015_11_10/insu6_1_master.h5&frame_number=44&stats=True

Distl parameters

distl.image: path to file on disk.

Further parameters matching the name/value pairs used by distl are described here: http://cci.lbl.gov/labelit/html/spotfinder.html

Dials parameters

file_name: path to file on disk

frame_number: for multi-file data, such as Eiger data from Dectris detectors, this indicates which frame number to analyze.

stats: True or False. If True, reports detailed spotfinding statistics such as resolution estimates.

Further parameters matching the name/values pairs used by the dials spotfinder are described under dials.find_spots.