4 Example opensrf config file for OpenILS
7 <opensrf version='0.0.2'>
12 <log>/openils/var/log</log> <!-- unix::server log files -->
13 <sock>/openils/var/sock</sock> <!-- unix::server sock files -->
14 <pid>/openils/var/pid</pid>
15 <xsl>/openils/var/xsl</xsl>
16 <script>/openils/var</script>
17 <script_lib>/openils/var</script_lib>
20 <!-- global data visiblity settings -->
23 <!-- Set to "true" to require patron opt-in for foreign (non-home_ou) transactions -->
24 <opt_in>false</opt_in>
28 <IDL>/openils/conf/fm_IDL.xml</IDL> <!-- top level IDL file -->
30 <server_type>prefork</server_type> <!-- net::server type -->
32 <ils_events>/openils/var/data/ils_events.xml</ils_events> <!-- ILS events description file -->
35 <!-- global email notification settings -->
36 <template>/openils/var/data/hold_notification_template.example</template>
37 <smtp_server>localhost</smtp_server>
39 <!-- in most cases, this is overridden by location
40 specific config settings. this is just the default -->
41 <sender_address>evergreen@localhost</sender_address>
47 Settings for the reporter daemon process
50 <base_uri>https://localhost/reporter/</base_uri>
53 <host>localhost</host>
57 <password>postgres</password>
60 <!-- successful report outputs go here -->
61 <output_base>/openils/var/reporter/output</output_base>
62 <success_template>/openils/var/data/report-success</success_template>
63 <fail_template>/openils/var/data/report-fail</fail_template>
71 <!-- XML-RPC gateway. Do NOT publish unprotected services here -->
73 <!-- list of published services -->
74 <service>opensrf.math</service>
75 <service>opensrf.dbmath</service>
76 <service>open-ils.cat</service>
77 <service>open-ils.search</service>
78 <service>open-ils.circ</service>
79 <service>open-ils.actor</service>
80 <service>open-ils.auth</service>
81 <service>open-ils.collections</service>
87 <default>oclc</default>
91 <!-- LoC does not require username/password -->
93 <host>z3950.loc.gov</host>
97 <tcn><code>12</code><format>1</format></tcn>
98 <isbn><code>7</code><format>6</format></isbn>
99 <lccn><code>9</code><format>1</format></lccn>
100 <author><code>1003</code><format>6</format></author>
101 <title><code>4</code><format>6</format></title>
102 <issn><code>8</code><format>1</format></issn>
103 <publisher><code>1018</code><format>6</format></publisher>
104 <pubdate><code>31</code><format>1</format></pubdate>
105 <item_type><code>1001</code><format>1</format></item_type>
110 <!-- Z3950 settings for OCLC. Note that OCLC requires username/password -->
111 <host>zcat.oclc.org</host>
113 <db>OLUCWorldCat</db>
116 These are directly from the Bib-1 Attribute Set
117 http://www.loc.gov/z3950/agency/defns/bib1.html
118 <code> is the "use attribute", <format> is the "structure attribute"
119 This just puts some friendly names on the data.
121 <tcn><code>12</code><format>1</format></tcn>
122 <isbn><code>7</code><format>6</format></isbn>
123 <lccn><code>9</code><format>1</format></lccn>
124 <author><code>1003</code><format>6</format></author>
125 <title><code>4</code><format>6</format></title>
126 <issn><code>8</code><format>1</format></issn>
127 <publisher><code>1018</code><format>6</format></publisher>
128 <pubdate><code>31</code><format>1</format></pubdate>
129 <item_type><code>1001</code><format>1</format></item_type>
139 <!-- XXX If you use the Amazon plugin, you must link back to Amazon in the OPAC -->
141 <!-- load the Amazon added content module -->
142 <module>OpenILS::WWW::AddedContent::Amazon</module>
143 <!-- Base URL for Amazon added content fetching. This URL may
144 need to be shortened when new (read: non-image) content
145 fetching capabilities are added -->
146 <base_url>http://images.amazon.com/images/P/</base_url>
148 <!-- Max number of seconds to wait for an added content request to
149 return data. Data not returned within the timeout is considered
153 <!-- After added content lookups have been disabled due to too many
154 lookup failures, this is the amount of time to wait before
156 <retry_timeout>600</retry_timeout>
158 <!-- maximum number of consecutive lookup errors a given process can
159 have before added content lookups are disabled for everyone -->
160 <max_errors>4</max_errors>
162 <!-- If a userid is required to access the added content.. -->
163 <userid>MY_USER_ID</userid>
166 You can add free-form settings here and they will be accessible
167 within the added content module
174 <!-- no apps are enabled globally by default -->
178 <!-- memcache servers -->
181 <server>localhost:11211</server>
183 <max_cache_time>86400</max_cache_time>
188 <!-- Authentication server -->
191 <!-- how long to wait between stateful requests before the child process re-joins the pool -->
192 <keepalive>5</keepalive>
194 <!-- true if this service support stateless requests -->
195 <stateless>1</stateless>
197 <!-- implementation language -->
198 <language>c</language>
200 <!-- library to plugin -->
201 <implementation>oils_auth.so</implementation>
203 <!-- maximum required opensrf requests within a stateful connection -->
204 <max_requests>93</max_requests>
207 <!-- maximum number of top level requests coming to
208 this child before the child is recycled -->
209 <max_requests>1000</max_requests>
210 <!-- min children to fork -->
211 <min_children>1</min_children>
212 <!-- max possible children to fork -->
213 <max_children>15</max_children>
215 <!-- C forking implementation does not support
216 min/max idle children, but may in the future -->
218 <!-- min idle children -->
219 <min_spare_children>1</min_spare_children>
220 <!-- max idle children -->
221 <max_spare_children>5</max_spare_children>
226 <!-- defined app-specific settings here -->
228 <!-- default login timeouts based on login type -->
237 <!-- Generic search server -->
239 <keepalive>5</keepalive>
240 <stateless>1</stateless>
241 <language>perl</language>
242 <implementation>OpenILS::Application::Search</implementation>
243 <max_requests>93</max_requests>
246 <!-- the following 3 settings are currently used by Perl services only -->
247 <unix_sock>open-ils.search_unix.sock</unix_sock>
248 <unix_pid>open-ils.search_unix.pid</unix_pid>
249 <unix_log>open-ils.search_unix.log</unix_log>
251 <max_requests>1000</max_requests>
252 <min_children>1</min_children>
253 <max_children>15</max_children>
254 <min_spare_children>1</min_spare_children>
255 <max_spare_children>5</max_spare_children>
258 <marc_html_xsl>oilsMARC21slim2HTML.xsl</marc_html_xsl>
259 <!-- zip code database file -->
260 <!--<zips_file>/openils/var/data/zips.txt</zips_file>-->
264 <!-- server for accessing user info -->
266 <keepalive>5</keepalive>
267 <stateless>1</stateless>
268 <language>perl</language>
269 <implementation>OpenILS::Application::Actor</implementation>
270 <max_requests>93</max_requests>
272 <unix_sock>open-ils.actor_unix.sock</unix_sock>
273 <unix_pid>open-ils.actor_unix.pid</unix_pid>
274 <max_requests>1000</max_requests>
275 <unix_log>open-ils.actor_unix.log</unix_log>
276 <min_children>1</min_children>
277 <max_children>15</max_children>
278 <min_spare_children>1</min_spare_children>
279 <max_spare_children>5</max_spare_children>
285 <keepalive>5</keepalive>
286 <stateless>1</stateless>
287 <language>perl</language>
288 <implementation>OpenILS::Application::Cat</implementation>
289 <max_requests>199</max_requests>
291 <unix_sock>open-ils.cat_unix.sock</unix_sock>
292 <unix_pid>open-ils.cat_unix.pid</unix_pid>
293 <max_requests>1000</max_requests>
294 <unix_log>open-ils.cat_unix.log</unix_log>
295 <min_children>1</min_children>
296 <max_children>15</max_children>
297 <min_spare_children>1</min_spare_children>
298 <max_spare_children>5</max_spare_children>
302 <K_book>/openils/var/templates/marc/k_book.xml</K_book>
308 <keepalive>5</keepalive>
309 <stateless>1</stateless>
310 <language>perl</language>
311 <implementation>OpenILS::Application::SuperCat</implementation>
312 <max_requests>199</max_requests>
314 <unix_sock>open-ils.supercat_unix.sock</unix_sock>
315 <unix_pid>open-ils.supercat_unix.pid</unix_pid>
316 <max_requests>1000</max_requests>
317 <unix_log>open-ils.supercat_unix.log</unix_log>
318 <min_children>1</min_children>
319 <max_children>15</max_children>
320 <min_spare_children>1</min_spare_children>
321 <max_spare_children>5</max_spare_children>
327 <keepalive>3</keepalive>
328 <stateless>1</stateless>
329 <language>c</language>
330 <implementation>osrf_math.so</implementation>
331 <max_requests>97</max_requests>
333 <unix_sock>opensrf.math_unix.sock</unix_sock>
334 <unix_pid>opensrf.math_unix.pid</unix_pid>
335 <max_requests>1000</max_requests>
336 <unix_log>opensrf.math_unix.log</unix_log>
337 <min_children>1</min_children>
338 <max_children>15</max_children>
339 <min_spare_children>1</min_spare_children>
340 <max_spare_children>5</max_spare_children>
345 <keepalive>3</keepalive>
346 <stateless>1</stateless>
347 <language>c</language>
348 <implementation>osrf_dbmath.so</implementation>
349 <max_requests>99</max_requests>
351 <max_requests>1000</max_requests>
352 <unix_log>opensrf.dbmath_unix.log</unix_log>
353 <unix_sock>opensrf.dbmath_unix.sock</unix_sock>
354 <unix_pid>opensrf.dbmath_unix.pid</unix_pid>
355 <min_children>1</min_children>
356 <max_children>15</max_children>
357 <min_spare_children>1</min_spare_children>
358 <max_spare_children>5</max_spare_children>
363 <keepalive>3</keepalive>
364 <stateless>1</stateless>
365 <language>perl</language>
366 <implementation>OpenILS::Application::Penalty</implementation>
367 <max_requests>99</max_requests>
369 <max_requests>1000</max_requests>
370 <unix_log>open-ils.penalty_unix.log</unix_log>
371 <unix_sock>open-ils.penalty_unix.sock</unix_sock>
372 <unix_pid>open-ils.penalty_unix.pid</unix_pid>
373 <min_children>1</min_children>
374 <max_children>15</max_children>
375 <min_spare_children>1</min_spare_children>
376 <max_spare_children>5</max_spare_children>
379 <patron_penalty>penalty/patron_penalty.js</patron_penalty>
380 <script_path>/openils/var</script_path>
381 <script_path>/openils/var/catalog</script_path>
386 <keepalive>3</keepalive>
387 <stateless>1</stateless>
388 <language>perl</language>
389 <implementation>OpenILS::Application::Circ</implementation>
390 <max_requests>99</max_requests>
392 <max_requests>1000</max_requests>
393 <unix_log>open-ils.circ_unix.log</unix_log>
394 <unix_sock>open-ils.circ_unix.sock</unix_sock>
395 <unix_pid>open-ils.circ_unix.pid</unix_pid>
396 <min_children>1</min_children>
397 <max_children>15</max_children>
398 <min_spare_children>1</min_spare_children>
399 <max_spare_children>5</max_spare_children>
403 <email>false</email> <!-- set to true for hold notice emails -->
406 <!-- circulation policy scripts -->
407 <script_path>/openils/var</script_path>
408 <script_path>/openils/var/catalog</script_path>
410 <circ_permit_patron>circ/circ_permit_patron.js</circ_permit_patron>
411 <circ_permit_copy>circ/circ_permit_copy.js</circ_permit_copy>
412 <circ_duration>circ/circ_duration.js</circ_duration>
413 <circ_recurring_fines>circ/circ_recurring_fines.js</circ_recurring_fines>
414 <circ_max_fines>circ/circ_max_fines.js</circ_max_fines>
415 <circ_permit_renew>circ/circ_permit_renew.js</circ_permit_renew>
416 <circ_permit_hold>circ/circ_permit_hold.js</circ_permit_hold>
425 <mod>bestseller</mod>
426 <mod>bestsellernh</mod>
441 <mod>softwrlong</mod>
442 <mod>equip-long</mod>
443 <mod>talking book</mod>
446 <mod>video-long</mod>
450 <type>Miscellaneous</type>
451 <type>Overdue materials</type>
452 <type>Fee for placing a hold</type>
453 <type>Fee for checking out a book</type>
454 <type>Fee for library card</type>
455 <type>Miscellaneous charges</type>
456 <type>Lost materials</type>
457 <type>Damaged material</type>
458 <type>Overdue Reserves charge</type>
459 <type>Recall overdue</type>
460 <type>Fee for processing lost library materials</type>
461 <type>Fee for sending patron bills to collection agency</type>
462 <type>Fee for interlibrary loan</type>
463 <type>Fee for copies</type>
464 <type>Money advanced to pay for telephone use</type>
465 <type>Deposit fee</type>
466 <type>Fee for disk</type>
467 <type>Fee for faxing</type>
468 <type>Fee for laminating</type>
469 <type>Fee for room cleaning</type>
470 <type>Deposit returned; fee refund</type>
471 <type>Sale items</type>
472 <type>Fee for lost card</type>
473 <type>Long overdue items</type>
474 <type>Lost/Replacement Cassette</type>
475 <type>Returned Check</type>
481 <keepalive>3</keepalive>
482 <stateless>1</stateless>
483 <implementation>OpenILS::Application::Ingest</implementation>
484 <language>perl</language>
485 <max_requests>1000000</max_requests>
487 <max_requests>1000000</max_requests>
488 <unix_log>open-ils.ingest-unix.log</unix_log>
489 <unix_sock>open-ils.ingest-unix.sock</unix_sock>
490 <unix_pid>open-ils.ingest-unix.pid</unix_pid>
491 <min_children>5</min_children>
492 <max_children>20</max_children>
493 <min_spare_children>2</min_spare_children>
494 <max_spare_children>5</max_spare_children>
497 <script_path>/openils/var/catalog/</script_path>
498 <script_path>/openils/var/web/opac/common/js/</script_path>
500 <biblio_fingerprint>biblio_fingerprint.js</biblio_fingerprint>
501 <biblio_descriptor>biblio_descriptor.js</biblio_descriptor>
507 <keepalive>10</keepalive>
508 <stateless>1</stateless>
509 <language>perl</language>
510 <implementation>OpenILS::Application::Storage</implementation>
512 <max_requests>1000</max_requests>
513 <unix_log>openils.storage_unix.log</unix_log>
514 <unix_sock>openils.storage_unix.sock</unix_sock>
515 <unix_pid>openils.storage_unix.pid</unix_pid>
516 <min_children>1</min_children>
517 <max_children>10</max_children>
518 <min_spare_children>1</min_spare_children>
519 <max_spare_children>5</max_spare_children>
522 <script_path>/openils/var/catalog/</script_path>
524 <biblio_fingerprint>biblio_fingerprint.js</biblio_fingerprint>
531 <user>postgres</user>
532 <host>localhost</host>
536 <client_encoding>UTF-8</client_encoding>
544 <keepalive>6</keepalive>
545 <stateless>1</stateless>
546 <language>C</language>
547 <implementation>oils_cstore.so</implementation>
548 <max_requests>95</max_requests>
550 <max_requests>400</max_requests>
551 <min_children>1</min_children>
552 <max_children>15</max_children>
553 <min_spare_children>1</min_spare_children>
554 <max_spare_children>5</max_spare_children>
557 <max_query_recursion>100</max_query_recursion>
558 <driver>pgsql</driver>
562 <user>postgres</user>
563 <host>localhost</host>
567 <client_encoding>UTF-8</client_encoding>
575 <keepalive>1</keepalive>
576 <stateless>1</stateless>
577 <language>perl</language>
578 <implementation>OpenSRF::Application::Settings</implementation>
579 <max_requests>17</max_requests>
581 <unix_sock>opensrf.settings_unix.sock</unix_sock>
582 <unix_pid>opensrf.settings_unix.pid</unix_pid>
583 <max_requests>300</max_requests>
584 <unix_log>opensrf.settings_unix.log</unix_log>
585 <min_children>5</min_children>
586 <max_children>15</max_children>
587 <min_spare_children>3</min_spare_children>
588 <max_spare_children>5</max_spare_children>
592 <open-ils.collections>
593 <keepalive>3</keepalive>
594 <stateless>1</stateless>
595 <language>perl</language>
596 <implementation>OpenILS::Application::Collections</implementation>
597 <max_requests>17</max_requests>
599 <unix_sock>openils.collections_unix.sock</unix_sock>
600 <unix_pid>openils.collections_unix.pid</unix_pid>
601 <max_requests>1000</max_requests>
602 <unix_log>openils.collections_unix.log</unix_log>
603 <min_children>1</min_children>
604 <max_children>10</max_children>
605 <min_spare_children>1</min_spare_children>
606 <max_spare_children>5</max_spare_children>
608 </open-ils.collections>
611 <keepalive>3</keepalive>
612 <stateless>1</stateless>
613 <language>perl</language>
614 <implementation>OpenILS::Application::Reporter</implementation>
615 <max_requests>99</max_requests>
617 <unix_sock>openils.reporter_unix.sock</unix_sock>
618 <unix_pid>openils.reporter_unix.pid</unix_pid>
619 <max_requests>1000</max_requests>
620 <unix_log>openils.reporter_unix.log</unix_log>
621 <min_children>1</min_children>
622 <max_children>10</max_children>
623 <min_spare_children>1</min_spare_children>
624 <max_spare_children>5</max_spare_children>
629 <open-ils.reporter-store>
630 <keepalive>6</keepalive>
631 <stateless>1</stateless>
632 <language>C</language>
633 <implementation>oils_rstore.so</implementation>
634 <max_requests>95</max_requests>
636 <max_requests>400</max_requests>
637 <min_children>1</min_children>
638 <max_children>10</max_children>
639 <min_spare_children>1</min_spare_children>
640 <max_spare_children>5</max_spare_children>
643 <driver>pgsql</driver>
647 <user>postgres</user>
648 <host>localhost</host>
652 <client_encoding>UTF-8</client_encoding>
655 </open-ils.reporter-store>
665 Should match the fully qualified domain name of the host.
667 On Linux, the output of the following command is authoritative:
668 $ perl -MNet::Domain -e 'print Net::Domain::hostfqdn();'
670 To use 'localhost' instead, run osrf_ctl.sh with the -l flag
674 <!-- services hosted on this machine -->
675 <appname>opensrf.settings</appname>
676 <appname>opensrf.math</appname>
677 <appname>opensrf.dbmath</appname>
678 <appname>open-ils.cat</appname>
679 <appname>open-ils.supercat</appname>
680 <appname>open-ils.search</appname>
681 <appname>open-ils.circ</appname>
682 <appname>open-ils.actor</appname>
683 <appname>open-ils.auth</appname>
684 <appname>open-ils.storage</appname>
685 <appname>open-ils.penalty</appname>
686 <appname>open-ils.cstore</appname>
687 <appname>open-ils.collections</appname>
688 <appname>open-ils.ingest</appname>
689 <appname>open-ils.reporter</appname>
690 <appname>open-ils.reporter-store</appname>