Difference between revisions of "API:bin/indexer"

From EPrints Documentation
Jump to: navigation, search
 
Line 8: Line 8:
 
'''indexer''' - Indexing daemon for EPrints
 
'''indexer''' - Indexing daemon for EPrints
  
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
</div>
 
 
<!-- Pod2Wiki=head_synopsis -->
 
<!-- Pod2Wiki=head_synopsis -->
 
==SYNOPSIS==
 
==SYNOPSIS==
Line 26: Line 23:
  
 
'''indexer''' uninstall
 
'''indexer''' uninstall
 +
 +
'''indexer''' debug
  
 
'''indexer''' --help
 
'''indexer''' --help
  
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
</div>
 
 
<!-- Pod2Wiki=head_description -->
 
<!-- Pod2Wiki=head_description -->
 
==DESCRIPTION==
 
==DESCRIPTION==
Line 44: Line 40:
 
Once every 24 hours, the indexer rolls the logs (up to logfile.5) and then starts again. See --rollcount for ways to customise this.
 
Once every 24 hours, the indexer rolls the logs (up to logfile.5) and then starts again. See --rollcount for ways to customise this.
  
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
</div>
 
 
<!-- Pod2Wiki=head_options -->
 
<!-- Pod2Wiki=head_options -->
 
==OPTIONS==
 
==OPTIONS==
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
+
* '''--help'''
<span style='display:none'>User Comments</span>
+
: Print a brief help message and exit.
<!-- Edit below this comment -->
 
 
 
 
 
<!-- Pod2Wiki= -->
 
</div>
 
<!-- Pod2Wiki=item_b_help -->
 
==='''--help'''===
 
 
 
Print a brief help message and exit.
 
 
 
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
<span style='display:none'>User Comments</span>
 
<!-- Edit below this comment -->
 
 
 
 
 
<!-- Pod2Wiki= -->
 
</div>
 
<!-- Pod2Wiki=item_b_man -->
 
==='''--man'''===
 
 
 
Print the full manual page and then exit.
 
 
 
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
<span style='display:none'>User Comments</span>
 
<!-- Edit below this comment -->
 
 
 
 
 
<!-- Pod2Wiki= -->
 
</div>
 
<!-- Pod2Wiki=item_b_quiet -->
 
==='''--quiet'''===
 
 
 
Be vewwy vewwy quiet. This option will supress all output unless an error occurs.
 
 
 
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
<span style='display:none'>User Comments</span>
 
<!-- Edit below this comment -->
 
 
 
 
 
<!-- Pod2Wiki= -->
 
</div>
 
<!-- Pod2Wiki=item_b_force -->
 
==='''--force'''===
 
 
 
Start up, even if the PID file exists (implying another copy is running). This is useful for starting after a crash, but be carefully not to run to copies at once as BAD THINGS will happen.
 
 
 
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
<span style='display:none'>User Comments</span>
 
<!-- Edit below this comment -->
 
 
 
 
 
<!-- Pod2Wiki= -->
 
</div>
 
<!-- Pod2Wiki=item_b_verbose -->
 
==='''--verbose'''===
 
 
 
Explain in detail what is going on. May be repeated for greater effect.
 
 
 
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
<span style='display:none'>User Comments</span>
 
<!-- Edit below this comment -->
 
 
 
 
 
<!-- Pod2Wiki= -->
 
</div>
 
<!-- Pod2Wiki=item_b_clear -->
 
==='''--clear'''===
 
 
 
Clear broken event queue items (items that are "inprogress" or "failed") before commencing.
 
 
 
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
<span style='display:none'>User Comments</span>
 
<!-- Edit below this comment -->
 
 
 
 
 
<!-- Pod2Wiki= -->
 
</div>
 
<!-- Pod2Wiki=item_b_retry -->
 
==='''--retry'''===
 
 
 
Retry broken event queue items (items that are "inprogress" or "failed") before commencing.
 
 
 
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
<span style='display:none'>User Comments</span>
 
<!-- Edit below this comment -->
 
 
 
 
 
<!-- Pod2Wiki= -->
 
</div>
 
<!-- Pod2Wiki=item_b_logfile_i_filename -->
 
==='''--logfile''' <em>filename</em>===
 
 
 
Log to <em>filename</em> rather than default indexer log.
 
 
 
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
<span style='display:none'>User Comments</span>
 
<!-- Edit below this comment -->
 
  
 +
* '''--man'''
 +
: Print the full manual page and then exit.
  
<!-- Pod2Wiki= -->
+
* '''--quiet'''
</div>
+
: Be vewwy vewwy quiet. This option will supress all output unless an error occurs.
<!-- Pod2Wiki=item_b_loglevel_i_level -->
 
==='''--loglevel''' <em>level</em>===
 
 
 
Set the level of detail to log. Level may be 0-6.
 
 
 
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
<span style='display:none'>User Comments</span>
 
<!-- Edit below this comment -->
 
  
 +
* '''--force'''
 +
: Start up, even if the PID file exists (implying another copy is running). This is useful for starting after a crash, but be carefully not to run to copies at once as BAD THINGS will happen.
  
<!-- Pod2Wiki= -->
+
* '''--verbose'''
</div>
+
: Explain in detail what is going on. May be repeated for greater effect.
<!-- Pod2Wiki=item_b_rollcount_i_number -->
 
==='''--rollcount''' <em>number</em>===
 
  
Set the number of once-through logs that should be kept. If set to zero then indexer will never roll the logs but rather just keep writing to the main log.
+
* '''--clear'''
 +
: Clear broken event queue items (items that are "inprogress" or "failed") before commencing.
  
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
+
* '''--retry'''
<span style='display:none'>User Comments</span>
+
: Retry broken event queue items (items that are "inprogress" or "failed") before commencing.
<!-- Edit below this comment -->
 
  
 +
* '''--logfile''' <em>filename</em>
 +
: Log to <em>filename</em> rather than default indexer log.
  
<!-- Pod2Wiki= -->
+
* '''--loglevel''' <em>level</em>
</div>
+
: Set the level of detail to log. Level may be 0-6.
<!-- Pod2Wiki=item_b_respawn_i_seconds -->
 
==='''--respawn''' <em>seconds</em>===
 
  
Respawn the indexer every <em>seconds</em> (rolls the log files).
+
* '''--rollcount''' <em>number</em>
 +
: Set the number of once-through logs that should be kept. If set to zero then indexer will never roll the logs but rather just keep writing to the main log.
  
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
+
* '''--respawn''' <em>seconds</em>
<span style='display:none'>User Comments</span>
+
: Respawn the indexer every <em>seconds</em> (rolls the log files).
<!-- Edit below this comment -->
 
  
 +
* '''--notdaemon'''
 +
: Do not become a daemon, remain attached to the current terminal.
  
<!-- Pod2Wiki= -->
+
: Log goes to STDERR instead of the log file.
</div>
 
<!-- Pod2Wiki=item_b_notdaemon -->
 
==='''--notdaemon'''===
 
  
Do not become a daemon, remain attached to the current terminal.
+
: Does not create a .pid file.
  
Log goes to STDERR instead of the log file.
+
* '''--once'''
 +
: Only clear the current queue of things needing indexing then exit.
  
Does not create a .pid file.
+
* '''--version'''
 +
: Output version information and exit.
  
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
</div>
 
<!-- Pod2Wiki=item_b_once -->
 
==='''--once'''===
 
 
Only clear the current queue of things needing indexing then exit.
 
 
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
<span style='display:none'>User Comments</span>
 
<!-- Edit below this comment -->
 
 
 
<!-- Pod2Wiki= -->
 
</div>
 
<!-- Pod2Wiki=item_b_version -->
 
==='''--version'''===
 
 
Output version information and exit.
 
 
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
<span style='display:none'>User Comments</span>
 
<!-- Edit below this comment -->
 
 
 
<!-- Pod2Wiki= -->
 
</div>
 
 
<!-- Pod2Wiki=head_making_into_a_service -->
 
<!-- Pod2Wiki=head_making_into_a_service -->
 
==Making into a service ==
 
==Making into a service ==
Line 238: Line 102:
 
To make the indexer into a service which starts and stops on reboots etc. like httpd and mysqld do the following (as root):
 
To make the indexer into a service which starts and stops on reboots etc. like httpd and mysqld do the following (as root):
  
ln -s /opt/eprints3/bin/epindexer /etc/init.d/epindexer  
+
<pre> ln -s /opt/eprints3/bin/epindexer /etc/init.d/epindexer  
 
  chkconfig --add epindexer
 
  chkconfig --add epindexer
  chkconfig epindexer on
+
  chkconfig epindexer on</pre>
 
+
 
 
The epindexer script runs as root, changes user to "eprints" (or whatever uid your eprints install runs as) and then calls indexer.  
 
The epindexer script runs as root, changes user to "eprints" (or whatever uid your eprints install runs as) and then calls indexer.  
  
 +
<pre></pre>
  
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #cce;  padding: 0em 1em 0em 1em; font-size: 80%; '>
 
<span style='display:none'>User Comments</span>
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
</div>
 
 
<!-- Pod2Wiki=head_copyright -->
 
<!-- Pod2Wiki=head_copyright -->
 
==COPYRIGHT==
 
==COPYRIGHT==
<div style='background-color: #e8e8f; margin: 0.5em 0em 1em 0em; border: solid 1px #ccepadding: 0em 1em 0em 1em; font-size: 80%; '>
+
Copyright 2000-2011 University of Southampton.
<span style='display:none'>User Comments</span>
+
 
 +
This file is part of EPrints http://www.eprints.org/.
 +
 
 +
EPrints is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
 +
 
 +
EPrints is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
 +
 
 +
You should have received a copy of the GNU General Public License along with EPrints.  If not, see http://www.gnu.org/licenses/.
 +
 
 
<!-- Edit below this comment -->
 
<!-- Edit below this comment -->
  
  
 
<!-- Pod2Wiki= -->
 
<!-- Pod2Wiki= -->
</div>
+
<!-- Pod2Wiki=_postamble_ -->
<!-- Pod2Wiki=_postamble_ --><!-- Edit below this comment -->
+
<!-- Edit below this comment -->

Latest revision as of 09:57, 22 January 2013

EPrints 3 Reference: Directory Structure - Metadata Fields - Repository Configuration - XML Config Files - XML Export Format - EPrints data structure - Core API - Data Objects


API: Core API

Latest Source Code (3.4, 3.3) | Revision Log | Before editing this page please read Pod2Wiki


NAME

indexer - Indexing daemon for EPrints


SYNOPSIS

indexer start [options]

indexer stop

indexer status

indexer install

indexer uninstall

indexer debug

indexer --help


DESCRIPTION

This daemon runs in the background and creates index files for all eprints repositories.

Messages and errors are logged to /opt/eprints3/var/indexer.log unless you change the log options. If it appears to be having problems try raising the log level and examining the log.

Once every 24 hours, the indexer rolls the logs (up to logfile.5) and then starts again. See --rollcount for ways to customise this.


OPTIONS

  • --help
Print a brief help message and exit.
  • --man
Print the full manual page and then exit.
  • --quiet
Be vewwy vewwy quiet. This option will supress all output unless an error occurs.
  • --force
Start up, even if the PID file exists (implying another copy is running). This is useful for starting after a crash, but be carefully not to run to copies at once as BAD THINGS will happen.
  • --verbose
Explain in detail what is going on. May be repeated for greater effect.
  • --clear
Clear broken event queue items (items that are "inprogress" or "failed") before commencing.
  • --retry
Retry broken event queue items (items that are "inprogress" or "failed") before commencing.
  • --logfile filename
Log to filename rather than default indexer log.
  • --loglevel level
Set the level of detail to log. Level may be 0-6.
  • --rollcount number
Set the number of once-through logs that should be kept. If set to zero then indexer will never roll the logs but rather just keep writing to the main log.
  • --respawn seconds
Respawn the indexer every seconds (rolls the log files).
  • --notdaemon
Do not become a daemon, remain attached to the current terminal.
Log goes to STDERR instead of the log file.
Does not create a .pid file.
  • --once
Only clear the current queue of things needing indexing then exit.
  • --version
Output version information and exit.


Making into a service

This has only been tested under redhat linux. It make work on other OS's, but not promise.

To make the indexer into a service which starts and stops on reboots etc. like httpd and mysqld do the following (as root):

 ln -s /opt/eprints3/bin/epindexer /etc/init.d/epindexer 
 chkconfig --add epindexer
 chkconfig epindexer on

The epindexer script runs as root, changes user to "eprints" (or whatever uid your eprints install runs as) and then calls indexer.



COPYRIGHT

Copyright 2000-2011 University of Southampton.

This file is part of EPrints http://www.eprints.org/.

EPrints is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

EPrints is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with EPrints. If not, see http://www.gnu.org/licenses/.