<?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:pu="http://www.eclipse.org/hyades/schema/ProcessUnit.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" loggingLevel="60" name="Basic Context Implementation" role="context" uniqueID="N35B6D910F8511D88000A31D7605087A">
      <hga:Component description="Operating System file sensor" executableClass="org.eclipse.hyades.logging.adapter.sensors.SingleOSFileSensor" implementationCreationDate="2003-10-07T12:00:00.0" loggingLevel="0" name="OS File Sensor" role="sensor" roleCreationDate="2003-10-07T12:00:00.0" uniqueID="N3604F900F8511D88000A31D7605087A"/>
      <hga:Component description="This extractor uses regular expression  patterns to identify record delimiters" executableClass="org.eclipse.hyades.logging.adapter.extractors.RegularExpressionExtractor" implementationCreationDate="2003-10-07T12:00:00.0" loggingLevel="60" name="Regular Expression Extractor" role="messageExtractor" roleCreationDate="2003-10-07T12:00:00.0" uniqueID="N36299800F8511D88000A31D7605087A"/>
      <hga:Component description="Regular expression parser" executableClass="org.eclipse.hyades.logging.adapter.parsers.Parser" implementationCreationDate="2003-10-07T12:00:00.0" loggingLevel="60" name="Generic Parser" role="parser" roleCreationDate="2003-10-07T12:00:00.0" uniqueID="N3650A800F8511D88000A31D7605087A"/>
      <hga:Component description="CBE Formatter" executableClass="org.eclipse.hyades.logging.adapter.formatters.CBEFormatter" implementationCreationDate="2003-10-07T12:00:00.0" loggingLevel="60" name="CBE Formatter" role="formatter" roleCreationDate="2003-10-07T12:00:00.0" uniqueID="N36C36700F8511D88000A31D7605087A"/>
      <hga:Component description="CBE File Outputter" executableClass="org.eclipse.hyades.logging.adapter.config.outputters.StaticParserOutputter" implementationCreationDate="2003-10-07T12:00:00.0" implementationVersion="" implementationVersionDescription="" loggingLevel="60" name="CBEFileOutputter" role="outputter" roleCreationDate="2003-10-07T12:00:00.0" 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" uniqueID="N3604F900F8511D88000A31D7605087A" maximumBlocking="5" type="SingleFileSensor">
        <pu:Property propertyName="directory" propertyValue="."/>
        <pu:Property propertyName="fileName" propertyValue="example.log"/>
        <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})|(\S+)" uniqueID="N36299800F8511D88000A31D7605087A"/>
      <cc:Parser separatorToken="\s+" 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="(2\d{2}|3\d{2}|1\d{2})" positions="8" substitute="SUCCESSFUL"/>
                  <SubstitutionRule match="(2\d{2}|3\d{2}|1\d{2})" positions="9" substitute="SUCCESSFUL"/>
                  <SubstitutionRule match="(4\d{2}|5\d{2})" positions="8" substitute="UNSUCCESSFUL"/>
                  <SubstitutionRule match="(4\d{2}|5\d{2})" positions="9" substitute="UNSUCCESSFUL" useBuiltInFunction="false"/>
                  <SubstitutionRule match="(\&quot;\-\&quot;)@@(2\d{2}|3\d{2}|1\d{2})" positions="6@@7" substitute="SUCCESSFUL" useBuiltInFunction="false"/>
                  <SubstitutionRule match="(\&quot;\-\&quot;)@@(4\d{2}|5\d{2})" positions="6@@7" substitute="UNSUCCESSFUL" useBuiltInFunction="false"/>
                </parser:RuleAttribute>
                <parser:RuleAttribute index="N30BA5C1002F11D88000C6FD28070181" name="situationQualifier" usePreviousMatchSubstitutionAsDefault="false">
                  <SubstitutionRule match="(202|3\d{2}|1\d{2}|4\d{2}|5\d{2})" positions="8" substitute="REQUEST INITIATED"/>
                  <SubstitutionRule match="(202|3\d{2}|1\d{2}|4\d{2}|5\d{2})" positions="9" substitute="REQUEST INITIATED"/>
                  <SubstitutionRule match="(2\d{2})" positions="8" substitute="REQUEST COMPLETED"/>
                  <SubstitutionRule match="(2\d{2})" positions="9" substitute="REQUEST COMPLETED" useBuiltInFunction="false"/>
                  <SubstitutionRule match="(\&quot;\-\&quot;)@@(202|3\d{2}|1\d{2}|4\d{2}|5\d{2})" positions="6@@7" substitute="REQUEST INITIATED" useBuiltInFunction="false"/>
                  <SubstitutionRule match="(\&quot;\-\&quot;)@@(2\d{2})" positions="6@@7" substitute="REQUEST COMPLETED" useBuiltInFunction="false"/>
                </parser:RuleAttribute>
                <parser:RuleAttribute index="NCCBFC40002F11D88000C6FD28070181" name="reasoningScope" usePreviousMatchSubstitutionAsDefault="false">
                  <SubstitutionRule match="(2\d{2}|3\d{2}|1\d{2}|4\d{2}|5\d{2})" positions="8" substitute="EXTERNAL"/>
                  <SubstitutionRule match="(2\d{2}|3\d{2}|1\d{2}|4\d{2}|5\d{2})" positions="9" substitute="EXTERNAL" useBuiltInFunction="false"/>
                  <SubstitutionRule match="(\&quot;\-\&quot;)@@(\d{3})" positions="6@@7" substitute="EXTERNAL" useBuiltInFunction="false"/>
                </parser:RuleAttribute>
              </parser:RuleElement>
              <parser:RuleElement index="N224169A084711D8800091856AF4A65C" name="ReportSituation">
                <parser:RuleAttribute index="N224169B084711D8800091856AF4A65C" name="reasoningScope" usePreviousMatchSubstitutionAsDefault="false">
                  <SubstitutionRule substitute="INTERNAL" useBuiltInFunction="false"/>
                </parser:RuleAttribute>
                <parser:RuleAttribute index="N224169C084711D8800091856AF4A65C" name="reportCategory" usePreviousMatchSubstitutionAsDefault="false">
                  <SubstitutionRule substitute="LOG" useBuiltInFunction="false"/>
                </parser:RuleAttribute>
              </parser:RuleElement>
            </parser:RuleElement>
            <parser:RuleAttribute index="ND4A1091002F11D88000C6FD28070181" name="categoryName" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match="(2\d{2}|3\d{2}|1\d{2}|4\d{2}|5\d{2})" positions="8" substitute="RequestSituation"/>
              <SubstitutionRule match="(2\d{2}|3\d{2}|1\d{2}|4\d{2}|5\d{2})" positions="9" substitute="RequestSituation"/>
              <SubstitutionRule match="(\&quot;\-\&quot;)@@(\d{3})" positions="6@@7" substitute="RequestSituation" useBuiltInFunction="false"/>
              <SubstitutionRule substitute="ReportSituation" useBuiltInFunction="false"/>
            </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})" positions="1" 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})" positions="1" 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})" positions="1" 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="(\d{3})" positions="8" substitute="$1"/>
                <SubstitutionRule match="(\d{3})" positions="9" substitute="$1"/>
                <SubstitutionRule match="(\&quot;\-\&quot;)@@(\d{3})" positions="6@@7" substitute="$2" useBuiltInFunction="false"/>
              </parser:RuleAttribute>
            </parser:RuleElement>
            <parser:RuleAttribute index="NAE6B713002D11D88000C6FD28070181" name="name" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match="\d{3}" positions="8" substitute="return_code"/>
              <SubstitutionRule match="\d{3}" positions="9" substitute="return_code"/>
              <SubstitutionRule match="(\&quot;\-\&quot;)@@(\d{3})" positions="6@@7" substitute="return_code" useBuiltInFunction="false"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="NA82DDF4002D11D88000C6FD28070181" name="type" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match="\d{3}" positions="8" substitute="short"/>
              <SubstitutionRule match="\d{3}" positions="9" substitute="short"/>
              <SubstitutionRule match="(\&quot;\-\&quot;)@@(\d{3})" positions="6@@7" substitute="short" useBuiltInFunction="false"/>
            </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+)@@(.*)" positions="6@@7" substitute="$2" useBuiltInFunction="false"/>
              </parser:RuleAttribute>
            </parser:RuleElement>
            <parser:RuleAttribute index="N84689A4002D11D88000C6FD28070181" name="type" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match="(\&quot;\w+)@@(.*)" positions="6@@7" substitute="string"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="NC265BE1002D11D88000C6FD28070181" name="name" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match="(\&quot;\w+)@@(.*)" positions="6@@7" substitute="File"/>
            </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="\&quot;(\w+)" positions="6" substitute="$1"/>
              </parser:RuleAttribute>
            </parser:RuleElement>
            <parser:RuleAttribute index="NF34CCC4003311D88000C6FD28070181" name="type" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match="\&quot;(\w+)" positions="6" substitute="string"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="N4B83CE3003311D88000C6FD28070181" name="name" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match="\&quot;(\w+)" positions="6" substitute="method"/>
            </parser:RuleAttribute>
          </parser:RuleElement>
          <parser:RuleElement index="ND054C63078911D880008B85FEE72030" name="extendedDataElements">
            <parser:RuleElement index="NE249F10078911D880008B85FEE72030" name="values">
              <parser:RuleAttribute index="N0E370F0078911D880008B85FEE72030" name="values" usePreviousMatchSubstitutionAsDefault="false">
                <SubstitutionRule match=".*\[.*\]\s\&quot;\w+\s+.*\&quot;\s+\S+\s+\S+\s+\&quot;(\S+)\&quot;\s+\&quot;.*\&quot;" substitute="$1" useBuiltInFunction="false"/>
              </parser:RuleAttribute>
            </parser:RuleElement>
            <parser:RuleAttribute index="ND054C64078911D880008B85FEE72030" name="name" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match=".*\[.*\]\s\&quot;\w+\s+.*\&quot;\s+\S+\s+\S+\s+\&quot;(\S+)\&quot;\s+\&quot;.*\&quot;" substitute="Referer" useBuiltInFunction="false"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="ND054C65078911D880008B85FEE72030" name="type" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match=".*\[.*\]\s\&quot;\w+\s+.*\&quot;\s+\S+\s+\S+\s+\&quot;(\S+)\&quot;\s+\&quot;.*\&quot;" substitute="string" useBuiltInFunction="false"/>
            </parser:RuleAttribute>
          </parser:RuleElement>
          <parser:RuleElement index="N143DCE3078911D880008B85FEE72030" name="extendedDataElements">
            <parser:RuleElement index="N281B410078911D880008B85FEE72030" name="values">
              <parser:RuleAttribute index="N52E3670078911D880008B85FEE72030" name="values" usePreviousMatchSubstitutionAsDefault="false">
                <SubstitutionRule match=".*\[.*\]\s\&quot;\w+\s+.*\&quot;\s+\S+\s+\S+\s+\&quot;\S+\&quot;\s+\&quot;(.*)\&quot;" positions="" substitute="$1" useBuiltInFunction="false"/>
              </parser:RuleAttribute>
            </parser:RuleElement>
            <parser:RuleAttribute index="N143DCE4078911D880008B85FEE72030" name="name" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match=".*\[.*\]\s\&quot;\w+\s+.*\&quot;\s+\S+\s+\S+\s+\&quot;\S+\&quot;\s+\&quot;(.*)\&quot;" positions="" substitute="User-agent" useBuiltInFunction="false"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="N143DCE5078911D880008B85FEE72030" name="type" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match=".*\[.*\]\s\&quot;\w+\s+.*\&quot;\s+\S+\s+\S+\s+\&quot;\S+\&quot;\s+\&quot;(.*)\&quot;" positions="" substitute="string" useBuiltInFunction="false"/>
            </parser:RuleAttribute>
          </parser:RuleElement>
          <parser:RuleElement index="NA3A7573083F11D8800091856AF4A65C" name="extendedDataElements">
            <parser:RuleElement index="N1AF0730083F11D8800091856AF4A65C" name="values">
              <parser:RuleAttribute index="N2BEF090083F11D8800091856AF4A65C" name="values" usePreviousMatchSubstitutionAsDefault="false">
                <SubstitutionRule match="^([^0-9][^0-9\.][^0-9\.].*)" substitute="$1" useBuiltInFunction="false"/>
              </parser:RuleAttribute>
            </parser:RuleElement>
            <parser:RuleAttribute index="NA3A7574083F11D8800091856AF4A65C" name="name" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match="^([^0-9][^0-9\.][^0-9\.].*)" substitute="CGI Debugging Output" useBuiltInFunction="false"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="NA3A7575083F11D8800091856AF4A65C" name="type" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match="^([^0-9][^0-9\.][^0-9\.].*)" substitute="string" useBuiltInFunction="false"/>
            </parser:RuleAttribute>
          </parser:RuleElement>
          <parser:RuleElement index="ND88BDA309FD11D88000B70A90A10773" name="extendedDataElements">
            <parser:RuleElement index="NFA8B77009FD11D88000B70A90A10773" name="values">
              <parser:RuleAttribute index="N18A21A009FE11D88000B70A90A10773" name="values" usePreviousMatchSubstitutionAsDefault="false">
                <SubstitutionRule match="(HTTP/.*\&quot;)@@(.+)" positions="8@@10" substitute="$2" useBuiltInFunction="false"/>
                <SubstitutionRule match="(.*\&quot;)@@(\d+)" positions="7@@9" substitute="$2" useBuiltInFunction="false"/>
              </parser:RuleAttribute>
            </parser:RuleElement>
            <parser:RuleAttribute index="ND88BDA409FD11D88000B70A90A10773" name="name" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match="(HTTP/.*\&quot;)@@(.+)" positions="8@@10" substitute="file_size" useBuiltInFunction="false"/>
              <SubstitutionRule match="(.*\&quot;)@@(\d+)" positions="7@@9" substitute="file_size" useBuiltInFunction="false"/>
            </parser:RuleAttribute>
            <parser:RuleAttribute index="ND88BDA509FD11D88000B70A90A10773" name="type" usePreviousMatchSubstitutionAsDefault="false">
              <SubstitutionRule match="(HTTP/.*\&quot;)@@(.+)" positions="8@@10" substitute="string" useBuiltInFunction="false"/>
              <SubstitutionRule match="(.*\&quot;)@@(\d+)" positions="7@@9" substitute="int" useBuiltInFunction="false"/>
            </parser:RuleAttribute>
          </parser:RuleElement>
          <parser:RuleAttribute index="N3650A820F8511D88000A31D7605087A" name="creationTime" usePreviousMatchSubstitutionAsDefault="true">
            <SubstitutionRule match="^\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}\s\S+\s\S+\s\[(.*)\]\s." substitute="$1" timeFormat="dd/MMM/yyyy:HH:mm:ss z" useBuiltInFunction="false"/>
          </parser:RuleAttribute>
          <parser:RuleAttribute index="N024368D002B11D88000C6FD28070181" name="msg" usePreviousMatchSubstitutionAsDefault="false">
            <SubstitutionRule match=".*\[.*\]\s+(\&quot;.*)" substitute="$1"/>
            <SubstitutionRule match="^([^\d{1,3}][^\.][^\d{1,3}].*)" substitute="$1" useBuiltInFunction="false"/>
          </parser:RuleAttribute>
          <parser:RuleAttribute index="N230EBD1002C11D88000C6FD28070181" name="severity" usePreviousMatchSubstitutionAsDefault="false">
            <SubstitutionRule match="5\d{2}" positions="8" substitute="60" useBuiltInFunction="false"/>
            <SubstitutionRule match="5\d{2}" positions="9" substitute="60" useBuiltInFunction="false"/>
            <SubstitutionRule match="4\d{2}" positions="8" substitute="40" useBuiltInFunction="false"/>
            <SubstitutionRule match="4\d{2}" positions="9" substitute="40" useBuiltInFunction="false"/>
            <SubstitutionRule match="(\&quot;\-\&quot;)@@(5\d{2})" positions="6@@7" substitute="60" useBuiltInFunction="false"/>
            <SubstitutionRule match="(\&quot;\-\&quot;)@@(4\d{2})" positions="6@@7" substitute="40" useBuiltInFunction="false"/>
            <SubstitutionRule substitute="10" useBuiltInFunction="false"/>
          </parser:RuleAttribute>
        </parser:RuleElement>
      </cc:Parser>
      <fmt:Formatter description="CBE Formatter" uniqueID="N36C36700F8511D88000A31D7605087A"/>
      <cc:Outputter description="Default Logging Agent" uniqueID="N36E80600F8511D88000A31D7605087A" type="SingleFileOutputter">
        <op:SingleFileOutputterType/>
      </cc:Outputter>
    </cc:ContextInstance>
  </cc:Configuration>
</adapter:Adapter>