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