The Agent or Scheduler Agent can be installed on a windows NT, 2000,2003 or XP platform as a service.
When running the setup, you must choose the Tools option in the setup. This option installs the Java Wrapper tool that is used to run the agent as a service.
Edit the /bin/odiparams.bat file to match your configuration. The service created uses the agent startup parameters specified in this file.
Launch a Windows Command Prompt (Windows).
Go to the /bin sub-directory of your Oracle Data Integrator installation folder.
Run the agentservice.bat script with appropriate parameters to install the service.
Once the service is installed, you must go to the Windows' service manager to start the service.
agentservice.bat -i|-r -a|-s [<agent_name> [<agent_port> [<wrapper_configuration_file>]]]
Parameters |
Description |
---|---|
-i|-r |
-i option installs the service -r option un-installs the service. |
-a|-s |
-a Installs the listener agent (it uses the snpsagent.conf parameter file) -s Installs the Scheduler agent (it uses the snpsagentscheduler.conf parameter file) |
<agent_name> |
Name of the physical agent as declared in the topology. This parameter is mandatory for a Scheduler Agent, and optional for a listener agent. Note: This parameter affects the definition of the created service. When un-installing a service, you must specify the same <agent_name> that was used to install it. |
<agent_port> |
Listening port for the agent. |
<wrapper_configuration_file> |
Name of the wrapper configuration file. This file must be located in the tools/wrapper/conf/ sub-directory of your Oracle Data Integrator installation folder. This parameter is optional. |
The agent startup configuration (connected repository, java parameters) is defined in the odiparams.bat file.
The wrapper configuration file, located in the tools/wrapper/conf/ sub-directory of your Oracle Data Integrator installation folder, defines how the service will be launched. It contains part of the parameters of the agent, and may be changed according to your configuration.
For example, the following elements could be changed:
Additional drivers need to be added in the classpath, as wrapper.java.classpath.xx properties.
The properties related to the of log files management (wrapper.logfile.xx) may be changed depending on the log size and level required.
Increase the ping timeout (wrapper.ping.timeout) for a machine with a high CPU load.
The reference for this configuration file is given at the following URL: http://wrapper.tanukisoftware.org/.
Warning: You should not change a configuration file used by an existing service. The service should be un-installed first.
This sample file highlights the key parameters to adapt to your configuration, in green.
#********************************************************************
# Java wrapper Properties properties file for an Agent Scheduler
# Note that most parameters are set in the odiparams.bat file, or on
# the agentservice.bat command line.
# They are displayed in this file for information.
#********************************************************************
# *** Set the path to reference the jvm used for your Agent
# This parameter is read in odiparams.bat
# wrapper.java.command=java.exe
wrapper.working.dir=../../../bin/
# Java Main class.
wrapper.java.mainclass=org.tanukisoftware.wrapper.WrapperSimpleApp
# Java Classpath. Add class path elements as needed starting from 1
wrapper.java.classpath.1=../tools/wrapper/lib/wrapper.jar
wrapper.java.classpath.2=../lib/.
wrapper.java.classpath.3=../lib/sunopsis.zip
wrapper.java.classpath.4=../lib/snpshelp.zip
wrapper.java.classpath.5=../lib/jakarta-ant-1.4.1-optional.jar
wrapper.java.classpath.6=../lib/NetComponents.jar
wrapper.java.classpath.7=../lib/sunjce_provider.jar
wrapper.java.classpath.8=../lib/jce1_2_2.jar
wrapper.java.classpath.9=../lib/local_policy.jar
wrapper.java.classpath.10=../lib/US_export_policy.jar
wrapper.java.classpath.11=../lib/scripting/.
wrapper.java.classpath.12=../lib/scripting/bsf.jar
wrapper.java.classpath.13=../lib/scripting/bsh-1.2b7.jar
wrapper.java.classpath.14=../lib/scripting/js.jar
wrapper.java.classpath.15=../lib/scripting/jython.jar
wrapper.java.classpath.16=../drivers/.
wrapper.java.classpath.17=../drivers/classes12.zip
wrapper.java.classpath.18=../drivers/db2java.zip
wrapper.java.classpath.19=../drivers/jt400.zip
wrapper.java.classpath.20=../drivers/mysql.zip
wrapper.java.classpath.21=../drivers/snpsmq.zip
wrapper.java.classpath.22=../drivers/snpsxmlo.zip
wrapper.java.classpath.23=../drivers/sqlj.zip
wrapper.java.classpath.24=../drivers/common.jar
wrapper.java.classpath.25=../drivers/db2fs.jar
wrapper.java.classpath.26=../drivers/db2jcc.jar
wrapper.java.classpath.27=../drivers/jconn2.jar
wrapper.java.classpath.28=../drivers/xerces.jar
# *** add here the aditionnal driver classes that do not appear in the list above
# Java Library Path (location of Wrapper.DLL or libwrapper.so)
wrapper.java.library.path.1=../tools/wrapper/lib/
# Java Additional Parameters
wrapper.java.additional.1=-Djava.security.policy=server.policy
# Initial Java Heap Size (in MB)
# This parameter is read in odiparams.bat
# wrapper.java.initmemory=64
# Maximum Java Heap Size (in MB)
# This parameter is read in odiparams.bat
# wrapper.java.maxmemory=128
# Application parameters.
wrapper.app.parameter.1=oracle.odi.Agent
# The parameters below, related to the repository connection, are read in odiparams.bat
# update them in odiparams.sh
# wrapper.app.parameter.1=oracle.odi.Agent
# wrapper.app.parameter.2="-SECU_DRIVER=org.hsqldb.jdbcDriver"
# wrapper.app.parameter.3="-SECU_URL=jdbc:hsqldb:hsql://localhost"
# wrapper.app.parameter.4="-SECU_USER=sa"
# wrapper.app.parameter.5="-SECU_PASS="
# wrapper.app.parameter.6="-WORK_REPOSITORY=WORKREP2"
#
# Add additionnal parameters below, starting from parameter number 10
#********************************************************************
# Wrapper Logging Properties
#********************************************************************
# Format of output for the console. (See docs for formats)
wrapper.console.format=PM
# Log Level for console output. (See docs for log levels)
wrapper.console.loglevel=INFO
# Log file to use for wrapper output logging.
wrapper.logfile=agentservice.log
# Format of output for the log file. (See docs for formats)
wrapper.logfile.format=LPTM
# Log Level for log file output. (See docs for log levels)
wrapper.logfile.loglevel=INFO
# Maximum size that the log file will be allowed to grow to before
# the log is rolled. Size is specified in bytes. The default value
# of 0, disables log rolling. May abbreviate with the 'k' (kb) or
# 'm' (mb) suffix. For example: 10m = 10 megabytes.
wrapper.logfile.maxsize=1m
# Maximum number of rolled log files which will be allowed before old
# files are deleted. The default value of 0 implies no limit.
wrapper.logfile.maxfiles=10
# Log Level for sys/event log output. (See docs for log levels)
wrapper.syslog.loglevel=FATAL
#********************************************************************
# Wrapper NT Service Properties
#********************************************************************
# WARNING - Do not modify any of these properties when an application
# using this configuration file has been installed as a service.
# Please uninstall the service before modifying this section. The
# service can then be reinstalled.
# Name of the service
# This parameter is set depending on the agent Name
wrapper.ntservice.name=SnpsAgent
# Display name of the service
wrapper.ntservice.displayname=Oracle Data Integrator Agent
# Description of the service
wrapper.ntservice.description=Executes Oracle Data Integrator Sessions
# Service dependencies. Add dependencies as needed starting from 1
wrapper.ntservice.dependency.1=
# Mode in which the service is installed. AUTO_START or DEMAND_START
wrapper.ntservice.starttype=AUTO_START
# Allow the service to interact with the desktop.
wrapper.ntservice.interactive=false
#********************************************************************
# Wrapper JVM Timeouts in seconds (0 = No timeout limit)
#********************************************************************
# wrapper.ping.timeout=10
# wrapper.cpu.timeout=30