2006-02-21 18:28:33 -05:00
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
|
|
<!--
|
2006-07-27 23:22:58 -04:00
|
|
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
|
|
|
contributor license agreements. See the NOTICE file distributed with
|
|
|
|
this work for additional information regarding copyright ownership.
|
|
|
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
|
|
|
(the "License"); you may not use this file except in compliance with
|
|
|
|
the License. You may obtain a copy of the License at
|
2006-02-21 18:28:33 -05:00
|
|
|
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
See the License for the specific language governing permissions and
|
|
|
|
limitations under the License.
|
|
|
|
-->
|
|
|
|
<logkit logger="system.logkit" log-level="INFO"
|
|
|
|
manager-class="org.apache.avalon.excalibur.logger.LogKitLoggerManager">
|
|
|
|
<!--
|
|
|
|
The manager-class is what determines the underlying log implementation
|
|
|
|
In this case, it is Avalon LogKit.
|
|
|
|
Not sure what logger and log-level are for.
|
|
|
|
-->
|
|
|
|
|
|
|
|
<factories>
|
|
|
|
<factory type="file"
|
|
|
|
class="org.apache.avalon.excalibur.logger.factory.FileTargetFactory"/>
|
|
|
|
</factories>
|
|
|
|
|
|
|
|
<targets>
|
|
|
|
<!-- Sample entry showing custom format -->
|
|
|
|
<file id="logFile" >
|
|
|
|
<append>false</append>
|
|
|
|
<filename>format.log</filename>
|
|
|
|
<format type="pattern">
|
|
|
|
AT: %{time:yyyy/MM/dd HH:mm:ss} PRI: %5.5{priority} CAT: %{category} TEXT: %{message} EX: %{throwable}\n
|
|
|
|
</format>
|
|
|
|
</file>
|
|
|
|
|
|
|
|
<!-- Sample entry showing unique names. SSS = milliseconds -->
|
|
|
|
<file id="logUnique" >
|
|
|
|
<append>false</append>
|
|
|
|
<filename>prefix</filename>
|
|
|
|
<rotation type="unique" pattern="yyyy-MM-dd-hh-mm-ss-SSS" suffix=".log">
|
|
|
|
<size>1000000</size>
|
|
|
|
</rotation>
|
|
|
|
<!-- can also add a format here -->
|
|
|
|
</file>
|
|
|
|
|
|
|
|
<!--
|
|
|
|
Sample entry showing how to rotate files, i.e. my_log.000001 etc
|
|
|
|
-->
|
|
|
|
<file id="logRevolve" >
|
|
|
|
<append>false</append>
|
|
|
|
<filename>my_log</filename>
|
|
|
|
<rotation type="revolving" init="1" max="10">
|
|
|
|
<size>1000000</size>
|
|
|
|
</rotation>
|
|
|
|
<!-- can also add a format here -->
|
|
|
|
</file>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</targets>
|
|
|
|
|
|
|
|
<categories>
|
|
|
|
<!--
|
|
|
|
Notes:
|
|
|
|
* must define the default category, i.e. where name = ""
|
|
|
|
* each log-target id-ref must refer to a valid file entry
|
|
|
|
-->
|
|
|
|
<category name="" log-level="INFO">
|
|
|
|
<log-target id-ref="logFile"/>
|
|
|
|
</category>
|
|
|
|
|
|
|
|
<!--
|
|
|
|
Further categories can be defined if required; they can have
|
|
|
|
the same or different targets, but the targets must exist
|
|
|
|
-->
|
|
|
|
<category name="jorphan" log-level="WARN">
|
|
|
|
<log-target id-ref="logRevolver"/>
|
|
|
|
</category>
|
|
|
|
|
|
|
|
</categories>
|
|
|
|
</logkit>
|
|
|
|
<!--
|
|
|
|
Documentation extracted from FileTargetFactory class.
|
|
|
|
This factory is able to create different FileLogTargets according to the
|
|
|
|
following configuration syntax:
|
|
|
|
<file id="foo">
|
|
|
|
<filename>${context-key}/real-name/...</filename>
|
|
|
|
<format type="avalon|raw|pattern|extended">pattern to be used if needed</format>
|
|
|
|
<append>true|false</append>
|
|
|
|
<rotation type="revolving" init="5" max="10">
|
|
|
|
|
|
|
|
or
|
|
|
|
|
|
|
|
<rotation type="unique" pattern="yyyy-MM-dd-hh-mm-ss" suffix=".log">
|
|
|
|
<or>
|
|
|
|
<size>10000000</size>
|
|
|
|
<time>24:00:00</time>
|
|
|
|
<time>12:00:00</time>
|
|
|
|
</or>
|
|
|
|
</rotation>
|
|
|
|
</file>
|
|
|
|
|
|
|
|
Some explanations about the Elements used in the configuration:
|
|
|
|
<filename>
|
|
|
|
This denotes the name of the file to log to. It can be constructed out of entries in the
|
|
|
|
passed Context object as ${context-key}. This element is required.
|
|
|
|
<format>
|
|
|
|
The type attribute of the pattern element denotes the type of Formatter to be used and
|
|
|
|
according to it the pattern to use for. This elements defaults to:
|
|
|
|
%7.7{priority} %5.5{time} [%8.8{category}] (%{context}): %{message}\\n%{throwable}
|
|
|
|
<append> If the log file should be deleted every time the logger is creates (normally at the
|
|
|
|
start of the applcation) or not and thus the log entries will be appended. This elements defaults to
|
|
|
|
false.
|
|
|
|
<rotation>
|
|
|
|
This is an optional element. The type attribute determines which FileStrategy to user
|
|
|
|
(revolving=RevolvingFileStrategy, unique=UniqueFileStrategy). The required init and max attribute
|
|
|
|
are used to determine the initial and maximum rotation to use on a type="revolving" attribute. The
|
|
|
|
optional pattern and suffix attribute are used to form filenames on a type="unique" attribute.
|
|
|
|
The initial rotation can be set to -1 in which case the system will first create the maximum number
|
|
|
|
of file rotations by selecting the next available rotation and thereafter will overwrite the oldest log
|
|
|
|
file.
|
|
|
|
<or>
|
|
|
|
uses the OrRotateStrategy to combine the children
|
|
|
|
<size>
|
|
|
|
The number of bytes if no suffix used or kilo bytes (1024) if suffixed with 'k' or mega bytes
|
|
|
|
(1024k) if suffixed with 'm' when a file rotation should occur. It doesn't make sense to specify more
|
|
|
|
than one.
|
|
|
|
<time>
|
|
|
|
The time as HH:MM:SS when a rotation should occur. If you like to rotate a logfile more
|
|
|
|
than once a day put an <or> element immediately after the <rotation> element and specify the
|
|
|
|
times (and one size, too) inside the <or> element.
|
|
|
|
<date>
|
|
|
|
Rotation occur when string formatted date changed. Specify date formatting pattern.
|
|
|
|
<interval>
|
|
|
|
Interval at which a rotation should occur. The interval should be given in the format ddd:
|
|
|
|
hh:mm:ss.
|
2005-12-12 12:53:59 -05:00
|
|
|
-->
|