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/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 DSE OpsCenter, you can change logging locations for DSE using configuration profiles.