| --- |
| layout: docpage |
| |
| title: "Documentation" |
| |
| is_homepage: false |
| is_sphinx_doc: true |
| |
| doc-parent: "Configuring Cassandra" |
| |
| doc-title: "logback.xml file" |
| doc-header-links: ' |
| <link rel="top" title="Apache Cassandra Documentation v4.0-beta4" href="../index.html"/> |
| <link rel="up" title="Configuring Cassandra" href="index.html"/> |
| <link rel="next" title="jvm-* files" href="cass_jvm_options_file.html"/> |
| <link rel="prev" title="commitlog-archiving.properties file" href="cass_cl_archive_file.html"/> |
| ' |
| doc-search-path: "../search.html" |
| |
| extra-footer: ' |
| <script type="text/javascript"> |
| var DOCUMENTATION_OPTIONS = { |
| URL_ROOT: "", |
| VERSION: "", |
| COLLAPSE_INDEX: false, |
| FILE_SUFFIX: ".html", |
| HAS_SOURCE: false, |
| SOURCELINK_SUFFIX: ".txt" |
| }; |
| </script> |
| ' |
| |
| --- |
| <div class="container-fluid"> |
| <div class="row"> |
| <div class="col-md-3"> |
| <div class="doc-navigation"> |
| <div class="doc-menu" role="navigation"> |
| <div class="navbar-header"> |
| <button type="button" class="pull-left navbar-toggle" data-toggle="collapse" data-target=".sidebar-navbar-collapse"> |
| <span class="sr-only">Toggle navigation</span> |
| <span class="icon-bar"></span> |
| <span class="icon-bar"></span> |
| <span class="icon-bar"></span> |
| </button> |
| </div> |
| <div class="navbar-collapse collapse sidebar-navbar-collapse"> |
| <form id="doc-search-form" class="navbar-form" action="../search.html" method="get" role="search"> |
| <div class="form-group"> |
| <input type="text" size="30" class="form-control input-sm" name="q" placeholder="Search docs"> |
| <input type="hidden" name="check_keywords" value="yes" /> |
| <input type="hidden" name="area" value="default" /> |
| </div> |
| </form> |
| |
| |
| |
| <ul class="current"> |
| <li class="toctree-l1"><a class="reference internal" href="../getting_started/index.html">Getting Started</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../new/index.html">New Features in Apache Cassandra 4.0</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../architecture/index.html">Architecture</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../cql/index.html">The Cassandra Query Language (CQL)</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../data_modeling/index.html">Data Modeling</a></li> |
| <li class="toctree-l1 current"><a class="reference internal" href="index.html">Configuring Cassandra</a><ul class="current"> |
| <li class="toctree-l2"><a class="reference internal" href="cass_yaml_file.html">cassandra.yaml file configuration</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="cass_rackdc_file.html">cassandra-rackdc.properties file</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="cass_env_sh_file.html">cassandra-env.sh file</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="cass_topo_file.html">cassandra-topologies.properties file</a></li> |
| <li class="toctree-l2"><a class="reference internal" href="cass_cl_archive_file.html">commitlog-archiving.properties file</a></li> |
| <li class="toctree-l2 current"><a class="current reference internal" href="#">logback.xml file</a><ul> |
| <li class="toctree-l3"><a class="reference internal" href="#options">Options</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l2"><a class="reference internal" href="cass_jvm_options_file.html">jvm-* files</a></li> |
| </ul> |
| </li> |
| <li class="toctree-l1"><a class="reference internal" href="../operating/index.html">Operating Cassandra</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../tools/index.html">Cassandra Tools</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../troubleshooting/index.html">Troubleshooting</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../development/index.html">Contributing to Cassandra</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../faq/index.html">Frequently Asked Questions</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../plugins/index.html">Third-Party Plugins</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../bugs.html">Reporting Bugs</a></li> |
| <li class="toctree-l1"><a class="reference internal" href="../contactus.html">Contact us</a></li> |
| </ul> |
| |
| |
| |
| </div><!--/.nav-collapse --> |
| </div> |
| </div> |
| </div> |
| <div class="col-md-8"> |
| <div class="content doc-content"> |
| <div class="content-container"> |
| |
| <div class="section" id="logback-xml-file"> |
| <span id="cassandra-logback-xml"></span><h1>logback.xml file<a class="headerlink" href="#logback-xml-file" title="Permalink to this headline">¶</a></h1> |
| <p>The <code class="docutils literal notranslate"><span class="pre">logback.xml</span></code> configuration file can optionally set logging levels for the logs written to <code class="docutils literal notranslate"><span class="pre">system.log</span></code> and <code class="docutils literal notranslate"><span class="pre">debug.log</span></code>. The logging levels can also be set using <code class="docutils literal notranslate"><span class="pre">nodetool</span> <span class="pre">setlogginglevels</span></code>.</p> |
| <div class="section" id="options"> |
| <h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2> |
| <div class="section" id="appender-name-appender-choice-appender"> |
| <h3><code class="docutils literal notranslate"><span class="pre">appender</span> <span class="pre">name="<appender_choice>"...</appender></span></code><a class="headerlink" href="#appender-name-appender-choice-appender" title="Permalink to this headline">¶</a></h3> |
| <p>Specify log type and settings. Possible appender names are: <code class="docutils literal notranslate"><span class="pre">SYSTEMLOG</span></code>, <code class="docutils literal notranslate"><span class="pre">DEBUGLOG</span></code>, <code class="docutils literal notranslate"><span class="pre">ASYNCDEBUGLOG</span></code>, and <code class="docutils literal notranslate"><span class="pre">STDOUT</span></code>. <code class="docutils literal notranslate"><span class="pre">SYSTEMLOG</span></code> ensures that WARN and ERROR message are written synchronously to the specified file. <code class="docutils literal notranslate"><span class="pre">DEBUGLOG</span></code> and <code class="docutils literal notranslate"><span class="pre">ASYNCDEBUGLOG</span></code> ensure that DEBUG messages are written either synchronously or asynchronously, respectively, to the specified file. <code class="docutils literal notranslate"><span class="pre">STDOUT</span></code> writes all messages to the console in a human-readable format.</p> |
| <p><strong>Example:</strong> <appender name=”SYSTEMLOG” class=”ch.qos.logback.core.rolling.RollingFileAppender”></p> |
| </div> |
| <div class="section" id="file-filename-file"> |
| <h3><code class="docutils literal notranslate"><span class="pre"><file></span> <span class="pre"><filename></span> <span class="pre"></file></span></code><a class="headerlink" href="#file-filename-file" title="Permalink to this headline">¶</a></h3> |
| <p>Specify the filename for a log.</p> |
| <p><strong>Example:</strong> <file>${cassandra.logdir}/system.log</file></p> |
| </div> |
| <div class="section" id="level-log-level-level"> |
| <h3><code class="docutils literal notranslate"><span class="pre"><level></span> <span class="pre"><log_level></span> <span class="pre"></level></span></code><a class="headerlink" href="#level-log-level-level" title="Permalink to this headline">¶</a></h3> |
| <p>Specify the level for a log. Part of the filter. Levels are: <code class="docutils literal notranslate"><span class="pre">ALL</span></code>, <code class="docutils literal notranslate"><span class="pre">TRACE</span></code>, <code class="docutils literal notranslate"><span class="pre">DEBUG</span></code>, <code class="docutils literal notranslate"><span class="pre">INFO</span></code>, <code class="docutils literal notranslate"><span class="pre">WARN</span></code>, <code class="docutils literal notranslate"><span class="pre">ERROR</span></code>, <code class="docutils literal notranslate"><span class="pre">OFF</span></code>. <code class="docutils literal notranslate"><span class="pre">TRACE</span></code> creates the most verbose log, <code class="docutils literal notranslate"><span class="pre">ERROR</span></code> the least.</p> |
| <p>Note: Increasing logging levels can generate heavy logging output on a moderately trafficked cluster. |
| You can use the <code class="docutils literal notranslate"><span class="pre">nodetool</span> <span class="pre">getlogginglevels</span></code> command to see the current logging configuration.</p> |
| <p><strong>Default:</strong> INFO</p> |
| <p><strong>Example:</strong> <level>INFO</level></p> |
| </div> |
| <div class="section" id="rollingpolicy-class-rolling-policy-choice-filenamepattern-pattern-info-filenamepattern-rollingpolicy"> |
| <h3><code class="docutils literal notranslate"><span class="pre"><rollingPolicy</span> <span class="pre">class="<rolling_policy_choice>"</span> <span class="pre"><fileNamePattern><pattern_info></fileNamePattern></span> <span class="pre">...</span> <span class="pre"></rollingPolicy></span></code><a class="headerlink" href="#rollingpolicy-class-rolling-policy-choice-filenamepattern-pattern-info-filenamepattern-rollingpolicy" title="Permalink to this headline">¶</a></h3> |
| <p>Specify the policy for rolling logs over to an archive.</p> |
| <p><strong>Example:</strong> <rollingPolicy class=”ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy”></p> |
| </div> |
| <div class="section" id="filenamepattern-pattern-info-filenamepattern"> |
| <h3><code class="docutils literal notranslate"><span class="pre"><fileNamePattern></span> <span class="pre"><pattern_info></span> <span class="pre"></fileNamePattern></span></code><a class="headerlink" href="#filenamepattern-pattern-info-filenamepattern" title="Permalink to this headline">¶</a></h3> |
| <p>Specify the pattern information for rolling over the log to archive. Part of the rolling policy.</p> |
| <p><strong>Example:</strong> <fileNamePattern>${cassandra.logdir}/system.log.%d{yyyy-MM-dd}.%i.zip</fileNamePattern></p> |
| </div> |
| <div class="section" id="maxfilesize-size-maxfilesize"> |
| <h3><code class="docutils literal notranslate"><span class="pre"><maxFileSize></span> <span class="pre"><size></span> <span class="pre"></maxFileSize></span></code><a class="headerlink" href="#maxfilesize-size-maxfilesize" title="Permalink to this headline">¶</a></h3> |
| <p>Specify the maximum file size to trigger rolling a log. Part of the rolling policy.</p> |
| <p><strong>Example:</strong> <maxFileSize>50MB</maxFileSize></p> |
| </div> |
| <div class="section" id="maxhistory-number-of-days-maxhistory"> |
| <h3><code class="docutils literal notranslate"><span class="pre"><maxHistory></span> <span class="pre"><number_of_days></span> <span class="pre"></maxHistory></span></code><a class="headerlink" href="#maxhistory-number-of-days-maxhistory" title="Permalink to this headline">¶</a></h3> |
| <p>Specify the maximum history in days to trigger rolling a log. Part of the rolling policy.</p> |
| <p><strong>Example:</strong> <maxHistory>7</maxHistory></p> |
| </div> |
| <div class="section" id="encoder-pattern-pattern-encoder"> |
| <h3><code class="docutils literal notranslate"><span class="pre"><encoder></span> <span class="pre"><pattern>...</pattern></span> <span class="pre"></encoder></span></code><a class="headerlink" href="#encoder-pattern-pattern-encoder" title="Permalink to this headline">¶</a></h3> |
| <p>Specify the format of the message. Part of the rolling policy.</p> |
| <p><strong>Example:</strong> <maxHistory>7</maxHistory> |
| <strong>Example:</strong> <encoder> <pattern>%-5level [%thread] %date{ISO8601} %F:%L - %msg%n</pattern> </encoder></p> |
| </div> |
| <div class="section" id="contents-of-default-logback-xml"> |
| <h3>Contents of default <code class="docutils literal notranslate"><span class="pre">logback.xml</span></code><a class="headerlink" href="#contents-of-default-logback-xml" title="Permalink to this headline">¶</a></h3> |
| <div class="highlight-XML notranslate"><div class="highlight"><pre><span></span> <span class="nt"><configuration</span> <span class="na">scan=</span><span class="s">"true"</span> <span class="na">scanPeriod=</span><span class="s">"60 seconds"</span><span class="nt">></span> |
| <span class="nt"><jmxConfigurator</span> <span class="nt">/></span> |
| |
| <span class="c"><!-- No shutdown hook; we run it ourselves in StorageService after shutdown --></span> |
| |
| <span class="c"><!-- SYSTEMLOG rolling file appender to system.log (INFO level) --></span> |
| |
| <span class="nt"><appender</span> <span class="na">name=</span><span class="s">"SYSTEMLOG"</span> <span class="na">class=</span><span class="s">"ch.qos.logback.core.rolling.RollingFileAppender"</span><span class="nt">></span> |
| <span class="nt"><filter</span> <span class="na">class=</span><span class="s">"ch.qos.logback.classic.filter.ThresholdFilter"</span><span class="nt">></span> |
| <span class="nt"><level></span>INFO<span class="nt"></level></span> |
| <span class="nt"></filter></span> |
| <span class="nt"><file></span>${cassandra.logdir}/system.log<span class="nt"></file></span> |
| <span class="nt"><rollingPolicy</span> <span class="na">class=</span><span class="s">"ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"</span><span class="nt">></span> |
| <span class="c"><!-- rollover daily --></span> |
| <span class="nt"><fileNamePattern></span>${cassandra.logdir}/system.log.%d{yyyy-MM-dd}.%i.zip<span class="nt"></fileNamePattern></span> |
| <span class="c"><!-- each file should be at most 50MB, keep 7 days worth of history, but at most 5GB --></span> |
| <span class="nt"><maxFileSize></span>50MB<span class="nt"></maxFileSize></span> |
| <span class="nt"><maxHistory></span>7<span class="nt"></maxHistory></span> |
| <span class="nt"><totalSizeCap></span>5GB<span class="nt"></totalSizeCap></span> |
| <span class="nt"></rollingPolicy></span> |
| <span class="nt"><encoder></span> |
| <span class="nt"><pattern></span>%-5level [%thread] %date{ISO8601} %F:%L - %msg%n<span class="nt"></pattern></span> |
| <span class="nt"></encoder></span> |
| <span class="nt"></appender></span> |
| |
| <span class="c"><!-- DEBUGLOG rolling file appender to debug.log (all levels) --></span> |
| |
| <span class="nt"><appender</span> <span class="na">name=</span><span class="s">"DEBUGLOG"</span> <span class="na">class=</span><span class="s">"ch.qos.logback.core.rolling.RollingFileAppender"</span><span class="nt">></span> |
| <span class="nt"><file></span>${cassandra.logdir}/debug.log<span class="nt"></file></span> |
| <span class="nt"><rollingPolicy</span> <span class="na">class=</span><span class="s">"ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"</span><span class="nt">></span> |
| <span class="c"><!-- rollover daily --></span> |
| <span class="nt"><fileNamePattern></span>${cassandra.logdir}/debug.log.%d{yyyy-MM-dd}.%i.zip<span class="nt"></fileNamePattern></span> |
| <span class="c"><!-- each file should be at most 50MB, keep 7 days worth of history, but at most 5GB --></span> |
| <span class="nt"><maxFileSize></span>50MB<span class="nt"></maxFileSize></span> |
| <span class="nt"><maxHistory></span>7<span class="nt"></maxHistory></span> |
| <span class="nt"><totalSizeCap></span>5GB<span class="nt"></totalSizeCap></span> |
| <span class="nt"></rollingPolicy></span> |
| <span class="nt"><encoder></span> |
| <span class="nt"><pattern></span>%-5level [%thread] %date{ISO8601} %F:%L - %msg%n<span class="nt"></pattern></span> |
| <span class="nt"></encoder></span> |
| <span class="nt"></appender></span> |
| |
| <span class="c"><!-- ASYNCLOG assynchronous appender to debug.log (all levels) --></span> |
| |
| <span class="nt"><appender</span> <span class="na">name=</span><span class="s">"ASYNCDEBUGLOG"</span> <span class="na">class=</span><span class="s">"ch.qos.logback.classic.AsyncAppender"</span><span class="nt">></span> |
| <span class="nt"><queueSize></span>1024<span class="nt"></queueSize></span> |
| <span class="nt"><discardingThreshold></span>0<span class="nt"></discardingThreshold></span> |
| <span class="nt"><includeCallerData></span>true<span class="nt"></includeCallerData></span> |
| <span class="nt"><appender-ref</span> <span class="na">ref=</span><span class="s">"DEBUGLOG"</span> <span class="nt">/></span> |
| <span class="nt"></appender></span> |
| |
| <span class="c"><!-- STDOUT console appender to stdout (INFO level) --></span> |
| |
| <span class="nt"><appender</span> <span class="na">name=</span><span class="s">"STDOUT"</span> <span class="na">class=</span><span class="s">"ch.qos.logback.core.ConsoleAppender"</span><span class="nt">></span> |
| <span class="nt"><filter</span> <span class="na">class=</span><span class="s">"ch.qos.logback.classic.filter.ThresholdFilter"</span><span class="nt">></span> |
| <span class="nt"><level></span>INFO<span class="nt"></level></span> |
| <span class="nt"></filter></span> |
| <span class="nt"><encoder></span> |
| <span class="nt"><pattern></span>%-5level [%thread] %date{ISO8601} %F:%L - %msg%n<span class="nt"></pattern></span> |
| <span class="nt"></encoder></span> |
| <span class="nt"></appender></span> |
| |
| <span class="c"><!-- Uncomment bellow and corresponding appender-ref to activate logback metrics</span> |
| <span class="c"> <appender name="LogbackMetrics" class="com.codahale.metrics.logback.InstrumentedAppender" /></span> |
| <span class="c"> --></span> |
| |
| <span class="nt"><root</span> <span class="na">level=</span><span class="s">"INFO"</span><span class="nt">></span> |
| <span class="nt"><appender-ref</span> <span class="na">ref=</span><span class="s">"SYSTEMLOG"</span> <span class="nt">/></span> |
| <span class="nt"><appender-ref</span> <span class="na">ref=</span><span class="s">"STDOUT"</span> <span class="nt">/></span> |
| <span class="nt"><appender-ref</span> <span class="na">ref=</span><span class="s">"ASYNCDEBUGLOG"</span> <span class="nt">/></span> <span class="c"><!-- Comment this line to disable debug.log --></span> |
| <span class="c"><!--</span> |
| <span class="c"> <appender-ref ref="LogbackMetrics" /></span> |
| <span class="c"> --></span> |
| <span class="nt"></root></span> |
| |
| <span class="nt"><logger</span> <span class="na">name=</span><span class="s">"org.apache.cassandra"</span> <span class="na">level=</span><span class="s">"DEBUG"</span><span class="nt">/></span> |
| <span class="nt"><logger</span> <span class="na">name=</span><span class="s">"com.thinkaurelius.thrift"</span> <span class="na">level=</span><span class="s">"ERROR"</span><span class="nt">/></span> |
| <span class="nt"></configuration></span> |
| </pre></div> |
| </div> |
| </div> |
| </div> |
| </div> |
| |
| |
| |
| |
| <div class="doc-prev-next-links" role="navigation" aria-label="footer navigation"> |
| |
| <a href="cass_jvm_options_file.html" class="btn btn-default pull-right " role="button" title="jvm-* files" accesskey="n">Next <span class="glyphicon glyphicon-circle-arrow-right" aria-hidden="true"></span></a> |
| |
| |
| <a href="cass_cl_archive_file.html" class="btn btn-default" role="button" title="commitlog-archiving.properties file" accesskey="p"><span class="glyphicon glyphicon-circle-arrow-left" aria-hidden="true"></span> Previous</a> |
| |
| </div> |
| |
| </div> |
| </div> |
| </div> |
| </div> |
| </div> |