<?xml version="1.0" encoding="ASCII"?>
<adapter:Adapter xmlns:adapter="http://www.eclipse.org/hyades/schema/Adapter.xsd" xmlns:cc="http://www.eclipse.org/hyades/schema/ComponentConfiguration.xsd" xmlns:ex="http://www.eclipse.org/hyades/schema/Extractor.xsd" xmlns:fmt="http://www.eclipse.org/hyades/schema/Formatter.xsd" xmlns:hga="http://www.eclipse.org/hyades/schema/Context.xsd" xmlns:op="http://www.eclipse.org/hyades/schema/Outputter.xsd" xmlns:parser="http://www.eclipse.org/hyades/schema/Parser.xsd" xmlns:sensor="http://www.eclipse.org/hyades/schema/Sensor.xsd">
  <hga:Contexts>
    <hga:Context description="Context Instance for the current component" executableClass="org.eclipse.hyades.logging.adapter.impl.BasicContext" implementationCreationDate="Tue Nov 25 15:27:17 EST 2003" loggingLevel="60" name="Basic Context Implementation" role="context" roleCreationDate="Tue Nov 25 15:27:17 EST 2003" uniqueID="N35B6D910F8511D88000A31D7605087A">
      <hga:Component description="Operating System file sensor" executableClass="org.eclipse.hyades.logging.adapter.sensors.SingleOSFileSensor" implementationCreationDate="Tue Nov 25 15:27:17 EST 2003" loggingLevel="0" name="OS File Sensor" role="sensor" roleCreationDate="Tue Nov 25 15:27:17 EST 2003" uniqueID="N3604F900F8511D88000A31D7605087A"/>
      <hga:Component description="This extractor uses regular expression  patterns to identify record delimiters" executableClass="org.eclipse.hyades.logging.adapter.extractors.RegularExpressionExtractor" implementationCreationDate="Tue Nov 25 15:27:17 EST 2003" loggingLevel="99" name="Regular Expression Extractor" role="messageExtractor" roleCreationDate="Tue Nov 25 15:27:17 EST 2003" uniqueID="N36299800F8511D88000A31D7605087A"/>
      <hga:Component description="Regular expression parser" executableClass="org.eclipse.hyades.logging.adapter.parsers.Parser" implementationCreationDate="Tue Nov 25 15:27:17 EST 2003" loggingLevel="99" name="Generic Parser" role="parser" roleCreationDate="Tue Nov 25 15:27:17 EST 2003" uniqueID="N3650A800F8511D88000A31D7605087A"/>
      <hga:Component description="CBE Formatter" executableClass="org.eclipse.hyades.logging.adapter.formatters.CBEFormatter" implementationCreationDate="Tue Nov 25 15:27:17 EST 2003" loggingLevel="99" name="CBE Formatter" role="formatter" roleCreationDate="Tue Nov 25 15:27:17 EST 2003" uniqueID="N36C36700F8511D88000A31D7605087A"/>
      <hga:Component description="CBE File Outputter" executableClass="org.eclipse.hyades.logging.adapter.outputters.CBEFileOutputter" implementationCreationDate="2003-10-07T12:00:00" implementationVersion="" implementationVersionDescription="" loggingLevel="60" name="CBEFileOutputter" role="outputter" roleCreationDate="Tue Nov 25 15:27:17 EST 2003" uniqueID="N36E80600F8511D88000A31D7605087A"/>
    </hga:Context>
  </hga:Contexts>
  <cc:Configuration description="The component level configurations for this adapter" uniqueID="N35B6D900F8511D88000A31D7605087A">
    <cc:ContextInstance continuousOperation="false" description="Context Instance for the current component" maximumIdleTime="20000" pauseInterval="10" uniqueID="N35B6D910F8511D88000A31D7605087A">
      <cc:Sensor description="A single file sensor" maximumBlocking="5" type="SingleFileSensor" uniqueID="N3604F900F8511D88000A31D7605087A">
        <sensor:SingleFileSensor directory="." fileName="example.log"/>
      </cc:Sensor>
      <ex:Extractor containsLineBreaks="true" description="This extractor uses regular expression  patterns to identify record delimiters" endPattern="$" includeEndPattern="false" includeStartPattern="true" replaceLineBreaks="false" startPattern="^\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}" uniqueID="N36299800F8511D88000A31D7605087A"/>
      <cc:Parser uniqueID="N3650A800F8511D88000A31D7605087A">
        <parser:RuleElement index="N3650A810F8511D88000A31D7605087A" name="CommonBaseEvent">
          <parser:RuleElement index="N8CA7C54002A11D88000C6FD28070181" name="sourceComponentId">
            <parser:RuleAttribute index="ND66C0C1002A11D88000C6FD28070181" name="component" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule substitute="HTTP Server"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="N77CD869002A11D88000C6FD28070181" name="subComponent" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule substitute="Unknown"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="N12069D2002A11D88000C6FD28070181" name="componentIdType" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule substitute="ProductName"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="N3AB0CD6010F11D88000873B061CB0B3" name="location" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule substitute="" useBuiltInFunction="true"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="NCD2CCD7010F11D88000873B061CB0B3" name="locationType" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule substitute="" useBuiltInFunction="true"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="NDE661030DAB11D88000930FA6625271" name="componentType" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule substitute="HTTPServer" useBuiltInFunction="false"/>
            </parser:RuleAttribute>
          </parser:RuleElement>
          <parser:RuleElement index="N8273E56002C11D88000C6FD28070181" name="situation">
            <parser:RuleElement index="NA8AA990002E11D88000C6FD28070181" name="situationType">
              <parser:RuleElement index="NF8AFFE9002F11D88000C6FD28070181" name="RequestSituation">
                <parser:RuleAttribute index="N2815562002F11D88000C6FD28070181" name="successDisposition" usePreviousMatchSubstitutionAsDefault="false">
                  <SubstitutionRule match=".*\[.*\]\s\&quot;.*\&quot;\s(202|3\d+|1\d+).*" substitute="SUCCESSFUL"/>
                  <SubstitutionRule match=".*\[.*\]\s\&quot;.*\&quot;\s(2\d+).*" substitute="SUCCESSFUL"/>
                  <SubstitutionRule match=".*\[.*\]\s\&quot;.*\&quot;\s(4\d+|5\d+).*" substitute="UNSUCCESSFUL"/>
                </parser:RuleAttribute>
                <parser:RuleAttribute index="N30BA5C1002F11D88000C6FD28070181" name="situationQualifier" usePreviousMatchSubstitutionAsDefault="false">
                  <SubstitutionRule match=".*\[.*\]\s\&quot;.*\&quot;\s(202|3\d+|1\d+).*" substitute="REQUEST INITIATED"/>
                  <SubstitutionRule match=".*\[.*\]\s\&quot;.*\&quot;\s(2\d+).*" substitute="REQUEST COMPLETED"/>
                  <SubstitutionRule match=".*\[.*\]\s\&quot;.*\&quot;\s(4\d+|5\d+).*" substitute="REQUEST INITIATED"/>
                </parser:RuleAttribute>
                <parser:RuleAttribute index="NCCBFC40002F11D88000C6FD28070181" name="reasoningScope" usePreviousMatchSubstitutionAsDefault="false">
                  <SubstitutionRule match=".*\[.*\]\s\&quot;.*\&quot;\s(202|3\d+|1\d+).*" substitute="EXTERNAL"/>
                  <SubstitutionRule match=".*\[.*\]\s\&quot;.*\&quot;\s(2\d+).*" substitute="EXTERNAL"/>
                  <SubstitutionRule match=".*\[.*\]\s\&quot;.*\&quot;\s(4\d+|5\d+).*" substitute="EXTERNAL"/>
                </parser:RuleAttribute>
              </parser:RuleElement>
            </parser:RuleElement>
            <parser:RuleAttribute index="ND4A1091002F11D88000C6FD28070181" name="categoryName" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match=".*\[.*\]\s\&quot;.*\&quot;\s(202|3\d+|1\d+).*" substitute="RequestSituation"/>
              <SubstitutionRule match=".*\[.*\]\s\&quot;.*\&quot;\s(2\d+).*" substitute="RequestSituation"/>
              <SubstitutionRule match=".*\[.*\]\s\&quot;.*\&quot;\s(4\d+|5\d+).*" substitute="RequestSituation"/>
            </parser:RuleAttribute>
          </parser:RuleElement>
          <parser:RuleElement index="NF4E4C51002C11D88000C6FD28070181" name="extendedDataElements">
            <parser:RuleElement index="NEA78170002C11D88000C6FD28070181" name="values">
              <parser:RuleAttribute index="N0060000002D11D88000C6FD28070181" name="values" usePreviousMatchSubstitutionAsDefault="false">
                <SubstitutionRule match="(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}).*" substitute="$1"/>
              </parser:RuleAttribute>
            </parser:RuleElement>
            <parser:RuleAttribute index="N2CA0593002C11D88000C6FD28070181" name="name" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match="(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}).*" substitute="Client"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="NE6BC644002C11D88000C6FD28070181" name="type" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match="(\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}).*" substitute="string"/>
            </parser:RuleAttribute>
          </parser:RuleElement>
          <parser:RuleElement index="N9A75941002D11D88000C6FD28070181" name="extendedDataElements">
            <parser:RuleElement index="NE1B1FE0002D11D88000C6FD28070181" name="values">
              <parser:RuleAttribute index="NF0BE880002D11D88000C6FD28070181" name="values" usePreviousMatchSubstitutionAsDefault="false">
                <SubstitutionRule match=".*\&quot;.*\&quot;\s(\S+).*" substitute="$1"/>
              </parser:RuleAttribute>
            </parser:RuleElement>
            <parser:RuleAttribute index="NAE6B713002D11D88000C6FD28070181" name="name" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match=".*\&quot;.*\&quot;\s(\S+).*" substitute="return_code"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="NA82DDF4002D11D88000C6FD28070181" name="type" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match=".*\&quot;.*\&quot;\s(\S+).*" substitute="short"/>
            </parser:RuleAttribute>
          </parser:RuleElement>
          <parser:RuleElement index="N704BAD1002D11D88000C6FD28070181" name="extendedDataElements">
            <parser:RuleElement index="NED77220002D11D88000C6FD28070181" name="values">
              <parser:RuleAttribute index="N0206CE0002D11D88000C6FD28070181" name="values" usePreviousMatchSubstitutionAsDefault="false">
                <SubstitutionRule match=".*\&quot;\w+\s(.*)\s\S+&quot;.*" substitute="$1"/>
              </parser:RuleAttribute>
            </parser:RuleElement>
            <parser:RuleAttribute index="N84689A4002D11D88000C6FD28070181" name="type" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match=".*\&quot;\w+\s(.*)\s\S+&quot;.*" substitute="string"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="NC265BE1002D11D88000C6FD28070181" name="name" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match=".*\&quot;\w+\s(.*)\s\S+&quot;.*" substitute="File"/>
            </parser:RuleAttribute>
          </parser:RuleElement>
          <parser:RuleElement index="N91D41A1002D11D88000C6FD28070181" name="extendedDataElements">
            <parser:RuleElement index="N0A3D4C0002D11D88000C6FD28070181" name="values">
              <parser:RuleAttribute index="N1818A90002D11D88000C6FD28070181" name="values" usePreviousMatchSubstitutionAsDefault="false">
                <SubstitutionRule match=".*\&quot;.*\&quot;\s\S+\s(\d+)" substitute="$1"/>
              </parser:RuleAttribute>
            </parser:RuleElement>
            <parser:RuleAttribute index="NA284904002D11D88000C6FD28070181" name="type" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match=".*\&quot;.*\&quot;\s\S+\s(\d+)" substitute="int"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="NDFEA563002D11D88000C6FD28070181" name="name" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match=".*\&quot;.*\&quot;\s\S+\s(\d+)" substitute="file_size"/>
            </parser:RuleAttribute>
          </parser:RuleElement>
          <parser:RuleElement index="N7F86201003311D88000C6FD28070181" name="extendedDataElements">
            <parser:RuleElement index="NB59C730003311D88000C6FD28070181" name="values">
              <parser:RuleAttribute index="NC6013A0003311D88000C6FD28070181" name="values" usePreviousMatchSubstitutionAsDefault="false">
                <SubstitutionRule match=".*\[.*\]\s\&quot;(\w+).*" substitute="$1"/>
              </parser:RuleAttribute>
            </parser:RuleElement>
            <parser:RuleAttribute index="NF34CCC4003311D88000C6FD28070181" name="type" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match=".*\[.*\]\s\&quot;(\w+).*" substitute="string"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="N4B83CE3003311D88000C6FD28070181" name="name" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match=".*\[.*\]\s\&quot;(\w+).*" substitute="method"/>
            </parser:RuleAttribute>
          </parser:RuleElement>
          <parser:RuleAttribute index="N3650A820F8511D88000A31D7605087A" name="creationTime" usePreviousMatchSubstitutionAsDefault="false">
            <SubstitutionRule match="^\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\s\S+\s\S+\s\[(\d{2})/(Jan)/(\d{4}):(.*)\s+(\S\d{2})(\d{2}).*\]\s.*" substitute="$3-01-$1T$4$5:$6"/>
            <SubstitutionRule match="^\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\s\S+\s\S+\s\[(\d{2})/(Feb)/(\d{4}):(.*)\s+(\S\d{2})(\d{2}).*\]\s.*" substitute="$3-02-$1T$4$5:$6" useBuiltInFunction="false"/>
            <SubstitutionRule match="^\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\s\S+\s\S+\s\[(\d{2})/(Mar)/(\d{4}):(.*)\s+(\S\d{2})(\d{2}).*\]\s.*" substitute="$3-03-$1T$4$5:$6" useBuiltInFunction="false"/>
            <SubstitutionRule match="^\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\s\S+\s\S+\s\[(\d{2})/(Apr)/(\d{4}):(.*)\s+(\S\d{2})(\d{2}).*\]\s.*" substitute="$3-04-$1T$4$5:$6" useBuiltInFunction="false"/>
            <SubstitutionRule match="^\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\s\S+\s\S+\s\[(\d{2})/(May)/(\d{4}):(.*)\s+(\S\d{2})(\d{2}).*\]\s.*" substitute="$3-05-$1T$4$5:$6" useBuiltInFunction="false"/>
            <SubstitutionRule match="^\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\s\S+\s\S+\s\[(\d{2})/(Jun)/(\d{4}):(.*)\s+(\S\d{2})(\d{2}).*\]\s.*" substitute="$3-06-$1T$4$5:$6" useBuiltInFunction="false"/>
            <SubstitutionRule match="^\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\s\S+\s\S+\s\[(\d{2})/(Jul)/(\d{4}):(.*)\s+(\S\d{2})(\d{2}).*\]\s.*" substitute="$3-07-$1T$4$5:$6" useBuiltInFunction="false"/>
            <SubstitutionRule match="^\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\s\S+\s\S+\s\[(\d{2})/(Aug)/(\d{4}):(.*)\s+(\S\d{2})(\d{2}).*\]\s.*" substitute="$3-08-$1T$4$5:$6" useBuiltInFunction="false"/>
            <SubstitutionRule match="^\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\s\S+\s\S+\s\[(\d{2})/(Sep)/(\d{4}):(.*)\s+(\S\d{2})(\d{2}).*\]\s.*" substitute="$3-09-$1T$4$5:$6" useBuiltInFunction="false"/>
            <SubstitutionRule match="^\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\s\S+\s\S+\s\[(\d{2})/(Oct)/(\d{4}):(.*)\s+(\S\d{2})(\d{2}).*\]\s.*" substitute="$3-10-$1T$4$5:$6" useBuiltInFunction="false"/>
            <SubstitutionRule match="^\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\s\S+\s\S+\s\[(\d{2})/(Nov)/(\d{4}):(.*)\s+(\S\d{2})(\d{2}).*\]\s.*" substitute="$3-11-$1T$4$5:$6" useBuiltInFunction="false"/>
            <SubstitutionRule match="^\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\s\S+\s\S+\s\[(\d{2})/(Dec)/(\d{4}):(.*)\s+(\S\d{2})(\d{2}).*\]\s.*" substitute="$3-12-$1T$4$5:$6" useBuiltInFunction="false"/>
          </parser:RuleAttribute>
          <parser:RuleAttribute index="N024368D002B11D88000C6FD28070181" name="msg" usePreviousMatchSubstitutionAsDefault="false">
            <SubstitutionRule match=".*\[.*\]\s(.*)" substitute="$1"/>
          </parser:RuleAttribute>
          <parser:RuleAttribute index="N230EBD1002C11D88000C6FD28070181" name="severity" usePreviousMatchSubstitutionAsDefault="false">
            <SubstitutionRule substitute="10"/>
          </parser:RuleAttribute>
        </parser:RuleElement>
      </cc:Parser>
      <fmt:Formatter description="CBE Formatter" uniqueID="N36C36700F8511D88000A31D7605087A"/>
      <cc:Outputter description="Default Logging Agent" type="SingleFileOutputter" uniqueID="N36E80600F8511D88000A31D7605087A">
        <op:SingleFileOutputterType directory="." fileName="example.out"/>
      </cc:Outputter>
    </cc:ContextInstance>
  </cc:Configuration>
</adapter:Adapter>
