<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl"  href="configuration.xsl"?>

<!-- Put site-specific property overrides in this file. -->

<configuration>



<!-- LocalWriter parameters
  <property>
    <name>chukwaCollector.localOutputDir</name>
    <value>@TODO-COLLECTORS-LOCAL-OUTPUT-DIR@</value>
    <description>Chukwa local data sink directory, see LocalWriter.java</description>
  </property>

  <property>
    <name>chukwaCollector.writerClass</name>
    <value>org.apache.hadoop.chukwa.datacollection.writer.localfs.LocalWriter</value>
    <description>Local chukwa writer, see LocalWriter.java</description>
  </property>
-->



  <property>
    <name>writer.hdfs.filesystem</name>
    <value>@TODO-COLLECTORS-NAMENODE@</value>
    <description>HDFS to dump to</description>
  </property>
  
  <property>
    <name>chukwaCollector.outputDir</name>
    <value>/chukwa/logs/</value>
    <description>Chukwa data sink directory</description>
  </property>

  <property>
    <name>chukwaCollector.rotateInterval</name>
    <value>@TODO-COLLECTORS-ROTATEINTERVAL@</value>
    <description>Chukwa rotate interval (ms)</description>
  </property>

  <property>
    <name>chukwaCollector.http.port</name>
    <value>@TODO-COLLECTORS-PORT@</value>
    <description>The HTTP port number the collector will listen on</description>
  </property>

</configuration>
