The PhoenixSearchService manages all outgoing remote search queries.
This topic contains the following sections.
Description
The PhoenixSearchService is a Windows service that starts automatically and "listens" for search service queries arriving in its pickup folder. The pickup folder is located at [Phoenix installation folder]\search_queue. If a new query is detected, it is loaded, parsed and search requests are made to the rusearch.asmx web service of each Phoenix node.

|
Do not confuse Search Service Query files with Search Query documents. Search Service Queries are created by the Phoenix web application and sent to the PhoenixSearchService. Search Query documents are created by the PhoenixSearchService and sent via Web services to external Phoenix Nodes. |
|
ASPNET must be given write access to the pickup folder in order to successfully create search service query files. |
|
When this service is started (normally when Windows is loaded), any search query files currently in the pickup folder are processed. If this service has been stopped for a long period of time prior to its starting, there may be a large number of queries waiting to be sent. However this service can deduce whether each query has expired and if so, will simply delete it. |
The Search Service Query File
The search query file is simply an Xml file that is used to submit remote search requests to the PhoenixSearchService. It describes the various search parameters such as keywords, date ranges and spatial ranges of the results to match. It also includes the ids of the Phoenix nodes that are to be included in this search.
<?xml version="1.0" encoding="utf-8" standalone="yes"?> <query lang="en-ca"> <version>1.0.0</version> <NamedConnection>PhoenixDB</NamedConnection> <actor>4dtwqozhkbywwkytvdcxomr1</actor> <search_id>b00b5ea5-7c96-47db-8a6b-17742b068d3c</search_id> <keywords>vancouver</keywords> <extents>-180.00 -90.00 180.00 90.00</extents> <mindate>1908-01-01 00:00:00Z</mindate> <maxdate>2008-09-16 12:21:08Z</maxdate> <remotetargets> <target_id>22241dfa-c20d-49eb-950a-11a688c2cf67</target_id> <target_id>eafe88b5-d639-43bf-ac33-65bad6279804</target_id> <target_id>cfc6bbfb-a476-454b-8c93-d0f163b8dd88</target_id> </remotetargets> </query>
The log file
This service writes diagnostic information in a plain text log file which can be found at [Phoenix install folder]\logs\search.log. The amount of information that is written can be controlled by starting the service with a debug or debug full parameter.
When the service is started in debug mode, additional information is written to the log file. The current settings are dumped, and information regarding every outgoing request is logged. This mode is useful for seeing at a glance which remote nodes responded and how long the request took.
When the service is started in full debug mode, all information regarding every outgoing request is logged, including the actual search query.
For more information on starting and stopping services see The PhoenixServices.
