a51539f6c6282b5c614a61f8974f5b01fdfc0d46
[pazpar2-moved-to-github.git] / doc / pazpar2.xml
1 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.4//EN"
2  "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd"
3 [
4      <!ENTITY % local SYSTEM "local.ent">
5      %local;
6      <!ENTITY % entities SYSTEM "entities.ent">
7      %entities;
8      <!ENTITY % idcommon SYSTEM "common/common.ent">
9      %idcommon;
10 ]>
11 <refentry id="pazpar2">
12  <refentryinfo>
13   <productname>Pazpar2</productname>
14   <productnumber>&version;</productnumber>
15   <info><orgname>Index Data</orgname></info>
16  </refentryinfo>
17
18  <refmeta>
19   <refentrytitle>Pazpar2</refentrytitle>
20   <manvolnum>8</manvolnum>
21   <refmiscinfo class="manual">System management commands</refmiscinfo>
22  </refmeta>
23  
24  <refnamediv>
25   <refname>pazpar2</refname>
26   <refpurpose>Metasearch daemon.</refpurpose>
27  </refnamediv>
28  
29  <refsynopsisdiv>
30   <cmdsynopsis>
31    <command>pazpar2</command>
32    <arg choice="opt"><option>-d</option></arg>
33    <arg choice="opt"><option>-D</option></arg>
34    <arg choice="opt"><option>-f <replaceable>config</replaceable></option></arg>
35    <arg choice="opt"><option>-h <replaceable>ip:port</replaceable></option></arg>
36    <arg choice="opt"><option>-l <replaceable>logfile</replaceable></option></arg>
37    <arg choice="opt"><option>-m <replaceable>timeformat</replaceable></option></arg>
38    <arg choice="opt"><option>-p <replaceable>pidfile</replaceable></option></arg>
39    <arg choice="opt"><option>-R <replaceable>recfile</replaceable></option></arg>
40    <arg choice="opt"><option>-t</option></arg>
41    <arg choice="opt"><option>-u <replaceable>uid</replaceable></option></arg>
42    <arg choice="opt"><option>-v <replaceable>level</replaceable></option></arg>
43    <arg choice="opt"><option>-V</option></arg>
44    <arg choice="opt"><option>-w <replaceable>dir</replaceable></option></arg>
45    <arg choice="opt"><option>-X</option></arg>
46    <arg choice="opt"><option>-install</option></arg>
47    <arg choice="opt"><option>-remove</option></arg>
48   </cmdsynopsis>
49  </refsynopsisdiv>
50  
51  <refsect1>
52   <title>DESCRIPTION</title>
53   <para>
54    <command>pazpar2</command> is the Pazpar2 Metasearch daemon
55    and server.
56    In normal operation it acts as a simple HTTP server which serves
57    the Pazpar2 protocol.
58    The HTTP listener address may be given on the command line using
59    option <option>-h</option> or in the main configuration
60    file. The main configuration must be specified using option
61    <option>-f</option>.
62   </para>
63  </refsect1>
64  
65  <refsect1>
66   <title>OPTIONS</title>
67   
68   <variablelist>
69    <varlistentry>
70     <term><option>-d</option></term>
71     <listitem>
72      <para>
73       Enables dump of XML records to the current log file.
74       It is useful if stylesheets are being debugged. Using this option
75       twice makes Pazpar2 also dump full HTTP responses.
76      </para>
77      <para>
78       This option may also be used together with option <option>-t</option>
79       in which case the configuration, after include processing, will be
80       dumped to stdout.
81      </para>
82     </listitem>
83    </varlistentry>
84    <varlistentry>
85     <term><option>-D</option></term>
86     <listitem>
87      <para>
88      Puts the Pazpar2 server in the background.
89      </para>
90     </listitem>
91    </varlistentry>
92    <varlistentry>
93     <term><option>-f <replaceable>config</replaceable></option></term>
94     <listitem>
95      <para>
96       Specifies main configuration. This option must be specified
97       in order for Pazpar2 to operate normally.
98      </para>
99     </listitem>
100    </varlistentry>
101    <varlistentry>
102     <term><option>-h <replaceable>ip:port</replaceable></option></term>
103     <listitem>
104      <para>
105       Specifies the HTTP listener binding address.
106       The <replaceable>ip</replaceable>
107       may be a hostname or <literal>@</literal> for "any" address.
108       The <replaceable>port</replaceable> is an integer.
109      </para>
110     </listitem>
111    </varlistentry>
112    <varlistentry>
113     <term><option>-l <replaceable>logfile</replaceable></option></term>
114     <listitem>
115      <para>
116       Specifies log file. The log file must be specified when Pazpar2
117       is running in the background (-D).
118      </para>
119     </listitem>
120    </varlistentry>
121    <varlistentry>
122     <term>-m <replaceable>timeformat</replaceable></term>
123     <listitem><para>
124      Sets the format of time-stamps for logging.
125      Refer to the
126        <ulink
127            url="http://pubs.opengroup.org/onlinepubs/009695399/functions/strftime.html">
128        strftime(3)</ulink>
129        man page for the format.
130     </para></listitem>
131    </varlistentry>
132    <varlistentry>
133     <term><option>-p <replaceable>pidfile</replaceable></option></term>
134     <listitem>
135      <para>
136       Specifies PID file. If Pazpar2 is started and configured properly
137       the file given holds the process ID of the Pazpar2 process.
138      </para>
139     </listitem>
140    </varlistentry>
141    <varlistentry>
142     <term><option>-R <replaceable>recfile</replaceable></option></term>
143     <listitem>
144      <para>
145       If this option is given, HTTP requests are logged to file named
146       <replaceable>recfile</replaceable>.
147      </para>
148     </listitem>
149    </varlistentry>
150
151    <varlistentry>
152     <term><option>-t</option></term>
153     <listitem>
154      <para>
155       Checks parameters and configuration. No service or daemon is
156       started. Useful for checking a new configuration before a
157       Pazpar2 is restarted.
158      </para>
159      <para>
160       The configuration, after include processing, may also be dumped
161       to stdout by supplying option <option>-d</option> as well.
162      </para>
163      <note>
164       <para>
165        In Pazpar2 1.2 and earlier releases, option -t specified a
166        local target settings file.
167       </para>
168      </note>
169     </listitem>
170    </varlistentry>
171
172    <varlistentry>
173     <term><option>-u <replaceable>uid</replaceable></option></term>
174     <listitem>
175      <para>
176       Makes the Pazpar2 server change user ID to the
177       <replaceable>uid</replaceable> given.
178       This, normally, requires root privilege.
179      </para>
180     </listitem>
181    </varlistentry>
182
183    <varlistentry>
184     <term><option>-v <replaceable>level</replaceable></option></term>
185     <listitem>
186      <para>
187       Sets log level (YAZ log level system).
188      </para>
189     </listitem>
190    </varlistentry>
191
192    <varlistentry>
193     <term><option>-V</option></term>
194     <listitem>
195      <para>
196       Shows Pazpar2 version and versions of some of the components that it
197       is using (ICU and YAZ). Pazpar2 will exit immediately after
198       displaying the version information (no daemon started).
199      </para>
200     </listitem>
201    </varlistentry>
202
203    <varlistentry>
204     <term><option>-w <replaceable>dir</replaceable></option></term>
205     <listitem>
206      <para>
207       Changes working directory to <replaceable>dir</replaceable>.
208      </para>
209     </listitem>
210    </varlistentry>
211
212    <varlistentry>
213     <term><option>-X</option></term>
214     <listitem>
215      <para>
216       Makes the Pazpar2 server operate in debugging mode.
217       This prevents Pazpar2 from making separate threads and processes.
218       This option should not be used in production.
219      </para>
220     </listitem>
221    </varlistentry>
222
223    <varlistentry>
224     <term><option>-install</option></term>
225     <listitem>
226      <para>
227       This is an option which is only recognized on Windows. It installs
228       Pazpar2 as a Windows Service.
229      </para>
230      <note>
231       <para>
232        Pazpar2 only supports Windows Service options if Pazpar2 is
233        linked against YAZ 3.0.29 or later.
234       </para>
235      </note>
236     </listitem>
237    </varlistentry>
238
239    <varlistentry>
240     <term><option>-remove</option></term>
241     <listitem>
242      <para>
243       This is an option which is only recognized on Windows. It removes
244       a Pazpar2 - Windows Service.
245      </para>
246     </listitem>
247    </varlistentry>
248
249   </variablelist>
250   
251  </refsect1>
252  
253  <refsect1>
254   <title>EXAMPLES</title>
255   <para>The Debian package of pazpar2 starts the server with:
256    <screen>
257     pazpar2 -D -f /etc/pazpar2/pazpar2.cfg -l /var/log/pazpar2.log -p /var/run/pazpar2.pid -u nobody
258    </screen>
259    (one line). 
260   </para>
261   <para>
262    This will put pazpar2 in the background (-D), read config from from
263    <filename>/etc/pazpar2/pazpar2.cfg</filename>, log messages to
264    <filename>/var/log/pazpar2.log</filename>, create PID file
265    <filename>/var/run/pazpar2.pid</filename>. When the daemon is properly
266    started, the server will change effective user ID to nobody.
267   </para>
268   <para>
269    The server can be terminated with:
270    <screen>
271     kill `cat /var/run/pazpar2.pid`
272    </screen>
273   </para>
274   <para>
275    If Pazpar2 is to be debugged using GDB, we use option -X:
276    <screen>
277     cd pazpar2/src
278     gdb ./pazpar2
279     (gdb) run -X -f ../etc/pazpar2.cfg
280    </screen>
281   </para>
282  </refsect1> 
283  
284  <refsect1>
285   <title>FILES</title>
286   <para><filename>/usr/sbin/pazpar2</filename>: pazpar2 daemon</para>
287   
288   <para><filename>/usr/share/pazpar2</filename>: pazpar2 shared files</para>
289   
290   <para><filename>/etc/pazpar2</filename>: pazpar2 config area</para>
291  </refsect1>
292  
293  <refsect1>
294   <title>SEE ALSO</title>
295   <para>
296    Pazpar2 configuration:
297    <citerefentry>
298     <refentrytitle>pazpar2_conf</refentrytitle>
299     <manvolnum>5</manvolnum>
300    </citerefentry>
301   </para>
302   <para>
303    Pazpar2 protocol:
304    <citerefentry>
305     <refentrytitle>pazpar2_protocol</refentrytitle>
306     <manvolnum>7</manvolnum>
307    </citerefentry>
308   </para>
309  </refsect1>
310
311 </refentry>
312
313 <!-- Keep this comment at the end of the file
314 Local variables:
315 mode: nxml
316 nxml-child-indent: 1
317 End:
318 -->