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