<?xml version="1.0" encoding="UTF-8"?>
<Configuration name="COMPSsMaster" status="WARN">

  <!-- Logger console and files configuration -->
  <Appenders>
    <Console name="Console" target="SYSTEM_OUT">
      <PatternLayout pattern="[(%r) %6c{1}]  -  %m%n"/>
    </Console>
    <File name="COMPSsRuntimeLog" fileName="${sys:compss.appLogDir}/runtime.log" immediateFlush="false" append="false">
      <PatternLayout pattern="[(%r)(%d) %19c{1}]    @%-15.15M  -  %m%n"/>
    </File>
    <File name="COMPSsResourcesLog" fileName="${sys:compss.appLogDir}/resources.log" immediateFlush="false" append="false">
      <PatternLayout pattern="%m%n"/>
    </File>
  </Appenders>

  <!-- Configure runtime loggers -->
  <Loggers>
    <Root level="error">
      <AppenderRef ref="Console"/>
    </Root>

    <!-- RUNTIME ROOT -->
    <!-- es.bsc.compss: DEFAULT = OFF -->
    <Logger name="es.bsc.compss" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>

    <!-- COMMUNICATION -->
    <!-- es.bsc.compss.Communication: DEFAULT = ERROR -->
    <Logger name="Communication" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>
    <Logger name="es.bsc.compss.Communication" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>

    <!-- RUNTIME LOADER -->
    <!-- es.bsc.compss.Loader: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.Loader" additivity="FALSE" level="error">
      <AppenderRef ref="Console"/>
    </Logger>
    <!-- es.bsc.compss.LoaderUtils: DEFAULT = OFF -->
    <Logger name="es.bsc.compss.LoaderUtils" additivity="FALSE" level="error">
      <AppenderRef ref="Console"/>
    </Logger>

    <!-- RUNTIME API -->
    <!-- es.bsc.compss.API: DEFAULT = WARN -->
    <Logger name="es.bsc.compss.API" additivity="FALSE" level="warn">
      <AppenderRef ref="Console"/>
    </Logger>

    <!-- PROJECT AND RESOURCES XML PARSERS -->
    <!-- es.bsc.compss.Xml: DEFAULT = OFF -->
    <Logger name="es.bsc.compss.Xml" additivity="FALSE" level="off">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>
    <!-- es.bsc.compss.Xml.Resources: DEFAULT = OFF -->
    <Logger name="es.bsc.compss.Xml.Resources" additivity="FALSE" level="off">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>
    <!-- es.bsc.compss.Xml.Project: DEFAULT = OFF -->
    <Logger name="es.bsc.compss.Xml.Project" additivity="FALSE" level="off">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>

    <!-- RUNTIME RESOURCES -->
    <!-- es.bsc.compss.Resources: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.Resources" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsResourcesLog"/>
    </Logger>

    <!-- RUNTIME MAIN SUBCOMPONENTS -->
    <!-- es.bsc.compss.Components: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.Components" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>
    <!-- es.bsc.compss.Components.TaskProcessor: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.Components.TaskProcessor" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>
    <!-- es.bsc.compss.Components.TaskDispatcher: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.Components.TaskDispatcher" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>
    <!-- es.bsc.compss.Components.ResourceManager: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.Components.ResourceManager" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>
    <!-- es.bsc.compss.Components.CloudManager: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.Components.CloudManager" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>
    <!-- es.bsc.compss.Components.ErrorManager: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.Components.ErrorManager" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>
    <!-- es.bsc.compss.Components.Tracing: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.Components.Tracing" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>

    <!-- RUNTIME TASK PROCESSING SUBCOMPONENTS -->
    <!-- es.bsc.compss.Components.TaskProcessor.TaskAnalyser: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.Components.TaskProcessor.TaskAnalyser" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>
    <!-- es.bsc.compss.Components.TaskProcessor.DataInfoProvider: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.Components.TaskProcessor.DataInfoProvider" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>

    <!-- RUNTIME TASK DISPATCHER SUBCOMPONENTS -->
    <!-- es.bsc.compss.Components.TaskDispatcher.FileTransferManager: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.Components.TaskDispatcher.TaskScheduler" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>
    <!-- es.bsc.compss.Components.TaskDispatcher.FileTransferManager: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.Components.TaskDispatcher.JobManager" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>
    <!-- es.bsc.compss.Components.TaskDispatcher.FileTransferManager: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.Components.TaskDispatcher.FileTransferManager" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>

    <!-- CONNECTORS -->
    <!-- es.bsc.compss.Connectors: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.Connectors" additivity="FALSE" level="ERROR">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>
    <!-- es.bsc.compss.ConnectorsUtils: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.ConnectorsUtils" additivity="FALSE" level="ERROR">
      <AppenderRef ref="COMPSsResourcesLog"/>
    </Logger>

    <!-- WORKER -->
    <!-- es.bsc.compss.Worker: DEFAULT = OFF -->
    <Logger name="es.bsc.compss.Worker" additivity="FALSE" level="off">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>

    <!-- STORAGE -->
    <!-- es.bsc.compss.Storage: DEFAULT = ERROR -->
    <Logger name="es.bsc.compss.Storage" additivity="FALSE" level="error">
      <AppenderRef ref="COMPSsRuntimeLog"/>
    </Logger>

  </Loggers>
</Configuration>

