You can run Jetty inside Eclipse using the “Eclipse Jetty Feature” (Eclipse -> Help -> Install New Software…). Then, create a new debug configuration (Run -> Debug Configurations…). Specify
WebApp Tab Project: odf-web WebApp Folder: ../../../../../odf-web/src/main/webapp Context Path: /odf-web-0.1.0-SNAPSHOT HTTP / HTTPs Port: 58081
Arguments Tab VM Arguments: -Dodf.zookeeper.connect=localhost:52181
As the Eclipse Jetty plugin does not support secure connections nor basic authentication, remove the <security-constraint>
and <login-config>
sections from the web.xml. The URL of the ODF Webapp the needs to be prefixed with http:// rather than https://.
Then start Atlas and Kafka via the test-env (just comment out the line that starts jetty or stop it after being started). Now you can use the debug configuration in eclipse to start ODF.
See also (https://ibm-analytics.slack.com/archives/shared-discovery-pltf/p1467365155000009)
ODF uses java.util.logging
APIs so if your runtime environment does support direct setting, use the respective mechanism.
For runtimes that don't support this out-of-the-box (like Jetty) you can set the JVM system property odf.logspec
with a value like <Level>,<Path>
which advises ODF to write the log with logging level <Level>
to the file under <Path>
.
Example:
-Dodf.logspec=ALL,/tmp/myodflogfile.log
Availabel log levels are the ones for java.util.logging, namely SEVERE, WARNING, INFO, FINE, FINER, FINEST, and ALL.
The logs directory contains a bunch of logfiles, together with a file called atlas.pid
which contains the process ID of the Atlas server that is currently running. In case of issues the file logs/application.log
should be checked first.
Run these commands (from the atlas installation directory) to restart Atlas
bin/atlas_stop.py bin/atlas_start.py
To clean the Atlas repository, simply remove the directories data
and logs
before starting.
Sometimes, calling any Atlas REST API (and the UI) doesn‘t work and an HTTP error 503 is returned. We see this error occasionally and don’t know any way to fix it except cleaning all data and restarting Atlas
It takes a long time to create an Atlas object and after about a minute you see a message like this in the log
Unable to update metadata after 60000ms
This is the result of the kafka queues (which are used for notifications) being in error. To fix this restart Atlas (no data cleaning required).
If there is a problem starting Kafka / Zookeeper check if there might be a port conflict due to other instances of Kafka / Zookeeper using the default port. This might be the case if a more recent version of the IS suite is installed on the system on which you want to run ODF.
Example: If another instance of Zookeeper uses the default port 52181 you need to switch the Zookeeper port used by replacing 52181 with a free port number in:
To reset your Zookeeper / Kafka installation, you will first have to stop the servers:
bin/kafka-server-stop bin/zookeeper-server-stop
Next remove the zookeeper data directory and the Kafka logs directory. Note that “logs” in Kafka mean the actual data in the topics not the logfiles. You can find which directories to clean in the the properties dataDir
in the zookeeper.properties
file and log.dirs
in server.properties
respectively. The defaults are /tmp/zookeeper
and /tmp/kafka-logs
.
Restart the servers with
bin/zookeeper-server-start config/zookeeper.properties bin/kafka-server-start config/server.properties