30a94fac1a6c24b891aebe167246cbe5c16eaaea
[OpenSRF.git] / examples / opensrf_core.xml.example
1 <?xml version="1.0"?>
2 <!-- 
3 vim:et:ts=2:sw=2:
4 -->
5 <config>
6
7   <!-- bootstrap config for OpenSRF apps -->
8   <opensrf>
9
10     <routers>
11
12       <!-- define the list of routers our services will register with -->
13
14       <router>
15
16         <!-- This is the public router.  On this router, we only register applications
17              which should be accessible to everyone on the opensrf network -->
18         <name>router</name>
19         <domain>public.localhost</domain>
20         <services>
21             <service>opensrf.math</service> 
22         </services>
23       </router>
24
25       <router>
26         <!-- This is the private router.  All applications must register with 
27             this router, so no explicit <services> section is required -->
28         <name>router</name>
29         <domain>private.localhost</domain>
30       </router>
31     </routers>
32
33
34     <!-- Jabber login settings
35         Our domain should match that of the private router -->
36     <domain>private.localhost</domain>
37     <username>opensrf</username>
38     <passwd>password</passwd>
39     <port>5222</port>
40     <!-- name of the router used on our private domain.  
41         this should match one of the <name> of the private router above -->
42     <router_name>router</router_name>
43
44     <!-- Log a warning when an outbound message reaches this size in bytes -->
45     <msg_size_warn>1800000</msg_size_warn>
46
47     <!-- log file settings ======================================  -->
48     <!-- log to a local file -->
49     <logfile>LOCALSTATEDIR/log/osrfsys.log</logfile>
50
51     <!-- Log to syslog. You can use this same layout for 
52         defining the logging of all services in this file -->
53     <!--
54     <logfile>syslog</logfile>
55     <syslog>local2</syslog>
56     <actlog>local1</actlog>
57     -->
58
59     <!-- 0 None, 1 Error, 2 Warning, 3 Info, 4 debug, 5 Internal (Nasty) -->
60     <loglevel>3</loglevel>
61
62     <!-- Maximum log message length; if using syslog, you might need to adjust
63          your syslog service's configuration to match longer message lengths -->
64     <loglength>1536</loglength>
65
66     <!-- config file for the services -->
67     <settings_config>SYSCONFDIR/opensrf.xml</settings_config>
68
69   </opensrf>
70
71   <!-- The section between <gateway>...</gateway> is a standard OpenSRF C stack config file -->
72   <gateway>
73
74     <!--
75     we consider ourselves to be the "originating" client for requests,
76     which means we define the log XID string for log traces
77     -->
78     <client>true</client>
79
80     <!--  the routers's name on the network -->
81     <router_name>router</router_name>
82
83     <!-- jabber login info -->
84     <!-- The gateway connects to the public domain -->
85     <domain>public.localhost</domain>
86     <username>opensrf</username>
87     <passwd>password</passwd>
88     <port>5222</port>
89     <logfile>LOCALSTATEDIR/log/gateway.log</logfile>
90     <loglevel>3</loglevel>
91
92   </gateway>
93
94   <!-- ======================================================================================== -->
95
96     <routers>
97         <router> <!-- public router -->
98             <trusted_domains>
99                 <!-- allow private services to register with this router 
100                      and public clients to send requests to this router. -->
101                 <server>private.localhost</server>
102                 <!-- also allow private clients to send to the router so it can receive error messages -->
103                 <client>private.localhost</client>
104                 <client>public.localhost</client>
105             </trusted_domains>
106             <transport>
107                 <server>public.localhost</server>
108                 <port>5222</port>
109                 <unixpath>LOCALSTATEDIR/sock/unix_sock</unixpath>
110                 <username>router</username>
111                 <password>password</password>
112                 <resource>router</resource>
113                 <connect_timeout>10</connect_timeout>
114                 <max_reconnect_attempts>5</max_reconnect_attempts>
115             </transport>
116             <logfile>LOCALSTATEDIR/log/router.log</logfile>
117             <!--
118             <logfile>syslog</logfile>
119             <syslog>local2</syslog>
120             -->
121             <loglevel>2</loglevel>
122         </router>
123         <router> <!-- private router -->
124             <trusted_domains>
125                 <server>private.localhost</server>
126                 <!-- only clients on the private domain can send requests to this router -->
127                 <client>private.localhost</client>
128             </trusted_domains>
129             <transport>
130                 <server>private.localhost</server>
131                 <port>5222</port>
132                 <username>router</username>
133                 <password>password</password>
134                 <resource>router</resource>
135                 <connect_timeout>10</connect_timeout>
136                 <max_reconnect_attempts>5</max_reconnect_attempts>
137             </transport>
138             <logfile>LOCALSTATEDIR/log/router.log</logfile>
139             <!--
140             <logfile>syslog</logfile>
141             <syslog>local2</syslog>
142             -->
143             <loglevel>4</loglevel>
144         </router>
145     </routers>
146
147   <!-- ======================================================================================== -->
148
149   <shared>
150     <!-- Any methods which match any of these match_string node values will
151          have their params redacted from lower-level input logging.
152          Adjust these examples as needed. -->
153     <log_protect>
154     <!--
155       <match_string>open-ils.auth</match_string>
156       <match_string>open-ils.some_service.some_method</match_string>
157     -->
158     </log_protect>
159   </shared>
160
161 </config>