Allow yaz_log time-stamp format to be set MP-430
[metaproxy-moved-to-github.git] / doc / metaproxy.xml
1 <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.4//EN"
2     "http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd" [
3  <!ENTITY copyright SYSTEM "copyright.xml">
4  <!ENTITY % local SYSTEM "local.ent">
5      %local;
6  <!ENTITY % idcommon SYSTEM "common/common.ent">
7      %idcommon;
8 ]>
9 <refentry id="ref-metaproxy">
10  <refentryinfo>
11   <productname>Metaproxy</productname>
12   <productnumber>&version;</productnumber>
13   <info><orgname>Index Data</orgname></info>
14  </refentryinfo>
15
16  <refmeta>
17   <refentrytitle>metaproxy</refentrytitle>
18   <manvolnum>1</manvolnum>
19   <refmiscinfo class="manual">Commands</refmiscinfo>
20  </refmeta>
21
22  <refnamediv>
23   <refname>metaproxy</refname>
24   <refpurpose>Metaproxy - server</refpurpose>
25  </refnamediv>
26
27  <refsynopsisdiv>
28   <cmdsynopsis>
29    <command>metaproxy</command>
30    <arg choice="opt"><option>--help</option></arg>
31    <arg choice="opt"><option>--version</option></arg>
32    <arg choice="opt"><option>--config <replaceable>config</replaceable></option></arg>
33    <arg choice="opt"><option>-D</option></arg>
34    <arg choice="opt"><option>-l <replaceable>logfile</replaceable></option></arg>
35    <arg choice="opt"><option>-m <replaceable>timeformat</replaceable></option></arg>
36    <arg choice="opt"><option>-p <replaceable>pidfile</replaceable></option></arg>
37    <arg choice="opt"><option>-t</option></arg>
38    <arg choice="opt"><option>-u <replaceable>ID</replaceable></option></arg>
39    <arg choice="opt"><option>-w <replaceable>dir</replaceable></option></arg>
40    <arg choice="opt"><option>-X</option></arg>
41   </cmdsynopsis>
42  </refsynopsisdiv>
43
44  <refsect1><title>DESCRIPTION</title>
45
46   <para>
47    <command>metaproxy</command> is the Metaproxy daemon
48   </para>
49
50  </refsect1>
51
52  <refsect1><title>OPTIONS</title>
53
54   <variablelist>
55    <varlistentry>
56     <term>--help</term>
57     <listitem><para>
58       Displays help message.
59      </para></listitem>
60    </varlistentry>
61
62    <varlistentry>
63     <term>--version</term>
64     <listitem><para>
65       Displays Metaproxy version.
66      </para></listitem>
67    </varlistentry>
68
69    <varlistentry>
70     <term>--config <replaceable>config</replaceable></term>
71     <listitem><para>
72       Specify the configuration.
73      </para></listitem>
74    </varlistentry>
75
76    <varlistentry>
77     <term>-D</term>
78     <listitem><para>
79       Puts Metaproxy in the background after startup.
80      </para></listitem>
81    </varlistentry>
82
83    <varlistentry>
84     <term>-l <replaceable>logfile</replaceable></term>
85     <listitem><para>
86       Specifies YAZ log file.
87      </para></listitem>
88    </varlistentry>
89
90    <varlistentry>
91     <term>-m <replaceable>timeformat</replaceable></term>
92     <listitem><para>
93      Sets the format of time-stamps for all logging performed via yaz_log.
94      Refer to
95        <ulink
96            url="http://pubs.opengroup.org/onlinepubs/009695399/functions/strftime.html">
97        strftime(3)</ulink>
98        man page for the format.
99     </para></listitem>
100    </varlistentry>
101
102    <varlistentry>
103     <term>-p <replaceable>pidfile</replaceable></term>
104     <listitem><para>
105       Specifies file which holds PID after startup.
106      </para></listitem>
107    </varlistentry>
108
109    <varlistentry>
110     <term>-t</term>
111     <listitem><para>
112       Tests configuration. Returns exit code 0 on success; non-zero on failure.
113      </para></listitem>
114    </varlistentry>
115
116    <varlistentry>
117     <term>-u <replaceable>ID</replaceable></term>
118     <listitem><para>
119       Makes Metaproxy changes its identity to ID after startup.
120      </para></listitem>
121    </varlistentry>
122
123    <varlistentry>
124     <term>-w <replaceable>dir</replaceable></term>
125     <listitem><para>
126       Changes working directory to <replaceable>dir</replaceable>.
127      </para></listitem>
128    </varlistentry>
129
130    <varlistentry>
131     <term>-X</term>
132     <listitem><para>
133       Makes Metaproxy operate in debug mode.
134      </para></listitem>
135    </varlistentry>
136
137   </variablelist>
138  </refsect1>
139
140  <refsect1><title>CONFIGURATION</title>
141    <para>Metaproxy's configuration is XML based. All elements
142      should be in namespace <literal>http://indexdata.com/metaproxy</literal>.
143    </para>
144    <para>
145      The root element must be named <literal>metaproxy</literal> and
146      must specify a version. Currently the version must be
147      <literal>1.0</literal>. The children elements of metaproxy
148      are:
149      <variablelist>
150        <varlistentry>
151          <term>dlpath</term>
152          <listitem>
153            <para>
154              Specifies the path for Loadable filter modules
155            </para>
156          </listitem>
157        </varlistentry>
158        <varlistentry>
159          <term>start</term>
160          <listitem>
161            <para>
162              Specifies the start route. Takes a <literal>route</literal>
163              attribute with the name of the route.
164            </para>
165          </listitem>
166        </varlistentry>
167        <varlistentry>
168          <term>filters</term>
169          <listitem>
170            <para>
171              Specifies all filters. Includes one ore more
172              <literal>filter</literal> elements with filter-specific
173              configuration material.
174            </para>
175          </listitem>
176        </varlistentry>
177        <varlistentry>
178          <term>routes</term>
179          <listitem>
180            <para>
181              Specifies all routes. Includes one or more
182              <literal>route</literal> elements. Each <literal>route</literal>
183              in turn includes one or more filter specifications.
184            </para>
185          </listitem>
186        </varlistentry>
187      </variablelist>
188    </para>
189    <para>
190      The configuration is described in more detail in the
191      <ulink url="&url.metaproxy.doc;">Metaproxy manual</ulink>.
192    </para>
193  </refsect1>
194  <refsect1><title>EXAMPLES</title>
195    <para>
196      The configuration below specifies a simple Z39.50 proxy and
197      illustrates most configuration elements of Metaproxy.
198    </para>
199    <screen><![CDATA[
200 <?xml version="1.0"?>
201 <metaproxy xmlns="http://indexdata.com/metaproxy" version="1.0">
202   <dlpath>/usr/local/metaproxy/filters</dlpath>
203   <start route="start"/>
204   <filters>
205     <filter id="frontend" type="frontend_net">
206       <threads>10</threads>
207       <port>@:9000</port>
208     </filter>
209     <filter id="backend" type="z3950_client">
210      <timeout>30</timeout>
211      <default_target>z3950.indexdata.dk</default_target>
212     </filter>
213   </filters>
214   <routes>
215     <route id="start">
216       <filter refid="frontend"/>
217       <filter type="log">
218         <message>log</message>
219       </filter>
220       <filter refid="backend"/>
221       <filter type="bounce"/>
222     </route>
223   </routes>
224 </metaproxy>
225 ]]>
226    </screen>
227    <para>
228      Start server with configuration in <filename>my.xml</filename>.
229      <screen>
230        metaproxy --config my.xml
231      </screen>
232    </para>
233  </refsect1>
234
235  <refsect1><title>SCHEMA</title>
236    <literallayout><xi:include
237                      xi:href="../xml/schema/metaproxy.rnc"
238                      xi:parse="text"
239                      xmlns:xi="http://www.w3.org/2001/XInclude" />
240    </literallayout>
241  </refsect1>
242
243  <refsect1><title>FILES</title>
244   <para>
245    None important.
246   </para>
247  </refsect1>
248
249  <refsect1><title>SEE ALSO</title>
250   <para>
251    <citerefentry>
252     <refentrytitle>auth_simple</refentrytitle>
253     <manvolnum>3mp</manvolnum>
254    </citerefentry>,
255    <citerefentry>
256     <refentrytitle>backend_test</refentrytitle>
257     <manvolnum>3mp</manvolnum>
258    </citerefentry>,
259    <citerefentry>
260     <refentrytitle>bounce</refentrytitle>
261     <manvolnum>3mp</manvolnum>
262    </citerefentry>,
263    <citerefentry>
264     <refentrytitle>frontend_net</refentrytitle>
265     <manvolnum>3mp</manvolnum>
266    </citerefentry>,
267    <citerefentry>
268     <refentrytitle>http_file</refentrytitle>
269     <manvolnum>3mp</manvolnum>
270    </citerefentry>,
271    <citerefentry>
272     <refentrytitle>log</refentrytitle>
273     <manvolnum>3mp</manvolnum>
274    </citerefentry>,
275    <citerefentry>
276     <refentrytitle>multi</refentrytitle>
277     <manvolnum>3mp</manvolnum>
278    </citerefentry>,
279    <citerefentry>
280     <refentrytitle>query_rewrite</refentrytitle>
281     <manvolnum>3mp</manvolnum>
282    </citerefentry>,
283    <citerefentry>
284     <refentrytitle>record_transform</refentrytitle>
285     <manvolnum>3mp</manvolnum>
286    </citerefentry>,
287    <citerefentry>
288     <refentrytitle>session_shared</refentrytitle>
289     <manvolnum>3mp</manvolnum>
290    </citerefentry>,
291    <citerefentry>
292     <refentrytitle>sru_z3950</refentrytitle>
293     <manvolnum>3mp</manvolnum>
294    </citerefentry>,
295    <citerefentry>
296     <refentrytitle>template</refentrytitle>
297     <manvolnum>3mp</manvolnum>
298    </citerefentry>,
299    <citerefentry>
300     <refentrytitle>virt_db</refentrytitle>
301     <manvolnum>3mp</manvolnum>
302    </citerefentry>,
303    <citerefentry>
304     <refentrytitle>z3950_client</refentrytitle>
305     <manvolnum>3mp</manvolnum>
306    </citerefentry>.
307   </para>
308   <para>
309    The Metaproxy
310    <ulink url="&url.metaproxy.doc;">manual</ulink>.
311   </para>
312  </refsect1>
313
314  &copyright;
315
316 </refentry>
317
318 <!-- Keep this comment at the end of the file
319 Local variables:
320 mode: nxml
321 nxml-child-indent: 1
322 End:
323 -->