Changing logging locations
Logging locations for DataStax Enterprise (DSE) are set at installation.
Generally, the default logs location is /var/log.
For example, /var/log/cassandra and /var/log/tomcat.
For details, see Default file locations for package and Installer-Services installations or Default file locations for tarball and Installer-No Services installations.
To change logging locations after installation, do the following:
-
Update the log directory location in the
dse-env.shfile or thelogback.xmlfile.To generate all logs in the same location, update the
dse-env.shfile. To generate logs in separate locations, update thelogback.xmlfile.-
dse-env.sh -
logback.xml
Add
CASSANDRA_LOG_DIRto thedse-env.shfile:export CASSANDRA_LOG_DIR="LOG_DIRECTORY_PATH"Replace
LOG_DIRECTORY_PATHwith the absolute path to your preferred log directory.Where is the
dse-env.shfile located?The location of the
dse-env.shfile depends on your installation type:-
Package installations and installer-services installations:
/etc/dse/dse-env.sh -
Tarball installations and installer-no services installations:
INSTALLATION_LOCATION/bin/dse-env.sh
Replace
${cassandra.logdir}with the absolute path to your preferred log directory in both the<file>and<fileNamePattern>elements for each appender.The
${cassandra.logdir}variable appears in the following locations:-
SYSTEMLOGappender: Controlssystem.logand its archived files -
DEBUGLOGappender: Controlsdebug.logand its archived files -
AUDITappender: Controlsaudit.logand its archived files (if uncommented)
Change the
system.loglocation<!-- Before --> <file>${cassandra.logdir}/system.log</file> <fileNamePattern>${cassandra.logdir}/system.log.%d{yyyy-MM-dd}.%i.zip</fileNamePattern> <!-- After --> <file>LOG_DIRECTORY_PATH/system.log</file> <fileNamePattern>LOG_DIRECTORY_PATH/system.log.%d{yyyy-MM-dd}.%i.zip</fileNamePattern>Replace
LOG_DIRECTORY_PATHwith the absolute path to your preferred log directory.Change the
debug.loglocation<!-- Before --> <file>${cassandra.logdir}/debug.log</file> <fileNamePattern>${cassandra.logdir}/debug.log.%d{yyyy-MM-dd}.%i.zip</fileNamePattern> <!-- After --> <file>LOG_DIRECTORY_PATH/debug.log</file> <fileNamePattern>LOG_DIRECTORY_PATH/debug.log.%d{yyyy-MM-dd}.%i.zip</fileNamePattern>Replace
LOG_DIRECTORY_PATHwith the absolute path to your preferred log directory.Change the
audit.loglocation<!-- Before --> <file>${cassandra.logdir}/audit.log</file> <fileNamePattern>${cassandra.logdir}/audit.log.%d{yyyy-MM-dd}.%i.zip</fileNamePattern> <!-- After --> <file>LOG_DIRECTORY_PATH/audit.log</file> <fileNamePattern>LOG_DIRECTORY_PATH/audit.log.%d{yyyy-MM-dd}.%i.zip</fileNamePattern>Replace
LOG_DIRECTORY_PATHwith the absolute path to your preferred log directory.Where is the
logback.xmlfile located?The location of the
logback.xmlfile depends on the type of installation:-
Package installations and installer-services installations:
/etc/dse/cassandra/logback.xml -
Tarball installations and installer-no services installations:
INSTALLATION_LOCATION/resources/cassandra/conf/logback.xml
To use different directories for different log types (system, debug, audit), specify different paths for each appender.
-
-
Optional: Change the Tomcat server log locations for DSE Search.
To generate all logs in the same location, update the
cassandra-env.shfile. To generate logs in separate locations, update thelogging.propertiesfile.-
cassandra-env.sh -
logging.properties
Update the
TOMCAT_LOGSenvironment variable:export TOMCAT_LOGS="LOG_DIRECTORY_PATH"Replace
LOG_DIRECTORY_PATHwith the absolute path to your preferred log directory.Where is the
cassandra-env.shfile located?The location of the
cassandra-env.shfile depends on the type of installation:-
Package installations and installer-services installations:
/etc/dse/cassandra/cassandra-env.sh -
Tarball installations and installer-no services installations:
INSTALLATION_LOCATION/resources/cassandra/conf/cassandra-env.sh
-
Set the locations in the
resources/tomcat/conf/logging.propertiesfile by replacing${tomcat.logs}with the path to your log directory:1catalina.org.apache.juli.AsyncFileHandler.level = FINE 1catalina.org.apache.juli.AsyncFileHandler.directory = LOG_DIRECTORY_PATH 1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina. 2localhost.org.apache.juli.AsyncFileHandler.level = FINE 2localhost.org.apache.juli.AsyncFileHandler.directory = LOG_DIRECTORY_PATH 2localhost.org.apache.juli.AsyncFileHandler.prefix = localhost. 3manager.org.apache.juli.AsyncFileHandler.level = FINE 3manager.org.apache.juli.AsyncFileHandler.directory = LOG_DIRECTORY_PATH 3manager.org.apache.juli.AsyncFileHandler.prefix = manager. 4host-manager.org.apache.juli.AsyncFileHandler.level = FINE 4host-manager.org.apache.juli.AsyncFileHandler.directory = LOG_DIRECTORY_PATH 4host-manager.org.apache.juli.AsyncFileHandler.prefix = host-manager. java.util.logging.ConsoleHandler.level = FINE java.util.logging.ConsoleHandler.formatter = org.apache.juli.OneLineFormatterReplace
LOG_DIRECTORY_PATHwith the absolute path to your preferred log directory. -
Save the changes to the
logging.propertiesfile.
-
-
Restart DSE.
-
Go to your log directory and verify that DSE is writing logs to the new location.
See also
If you use OpsCenter, you can change logging locations for DSE using configuration profiles.