<?xml version="1.0" encoding="utf-8"?>
|
<!--
|
! CDDL HEADER START
|
!
|
! The contents of this file are subject to the terms of the
|
! Common Development and Distribution License, Version 1.0 only
|
! (the "License"). You may not use this file except in compliance
|
! with the License.
|
!
|
! You can obtain a copy of the license at legal-notices/CDDLv1_0.txt
|
! or http://forgerock.org/license/CDDLv1.0.html.
|
! See the License for the specific language governing permissions
|
! and limitations under the License.
|
!
|
! When distributing Covered Code, include this CDDL HEADER in each
|
! file and include the License file at legal-notices/CDDLv1_0.txt.
|
! If applicable, add the following below this CDDL HEADER, with the
|
! fields enclosed by brackets "[]" replaced with your own identifying
|
! information:
|
! Portions Copyright [yyyy] [name of copyright owner]
|
!
|
! CDDL HEADER END
|
!
|
!
|
! Copyright 2013 ForgeRock AS
|
! -->
|
<adm:managed-object name="file-based-http-access-log-publisher"
|
plural-name="file-based-http-access-log-publishers"
|
package="org.opends.server.admin.std" extends="http-access-log-publisher"
|
xmlns:adm="http://www.opends.org/admin"
|
xmlns:ldap="http://www.opends.org/admin-ldap">
|
<adm:synopsis>
|
<adm:user-friendly-plural-name />
|
publish HTTP access messages to the file system.
|
</adm:synopsis>
|
<adm:profile name="ldap">
|
<ldap:object-class>
|
<ldap:name>ds-cfg-file-based-http-access-log-publisher</ldap:name>
|
<ldap:superior>ds-cfg-http-access-log-publisher</ldap:superior>
|
</ldap:object-class>
|
</adm:profile>
|
<adm:property-override name="java-class" advanced="true">
|
<adm:default-behavior>
|
<adm:defined>
|
<adm:value>
|
org.opends.server.loggers.TextHTTPAccessLogPublisher
|
</adm:value>
|
</adm:defined>
|
</adm:default-behavior>
|
</adm:property-override>
|
<adm:property name="asynchronous" mandatory="true" advanced="true">
|
<adm:synopsis>
|
Indicates whether the
|
<adm:user-friendly-name />
|
will publish records asynchronously.
|
</adm:synopsis>
|
<adm:default-behavior>
|
<adm:defined>
|
<adm:value>true</adm:value>
|
</adm:defined>
|
</adm:default-behavior>
|
<adm:syntax>
|
<adm:boolean />
|
</adm:syntax>
|
<adm:profile name="ldap">
|
<ldap:attribute>
|
<ldap:name>ds-cfg-asynchronous</ldap:name>
|
</ldap:attribute>
|
</adm:profile>
|
</adm:property>
|
<adm:property name="queue-size" advanced="true">
|
<adm:synopsis>
|
The maximum number of log records that can be stored in the
|
asynchronous queue.
|
</adm:synopsis>
|
<adm:description>
|
Setting the queue size to zero activates parallel log writer
|
implementation which has no queue size limit and as such the
|
parallel log writer should only be used on a very well tuned
|
server configuration to avoid potential out of memory errors.
|
</adm:description>
|
<adm:requires-admin-action>
|
<adm:other>
|
<adm:synopsis>
|
The <adm:user-friendly-name /> must be restarted if this property
|
is changed and the asynchronous property is set to true.
|
</adm:synopsis>
|
</adm:other>
|
</adm:requires-admin-action>
|
<adm:default-behavior>
|
<adm:defined>
|
<adm:value>5000</adm:value>
|
</adm:defined>
|
</adm:default-behavior>
|
<adm:syntax>
|
<adm:integer lower-limit="0" />
|
</adm:syntax>
|
<adm:profile name="ldap">
|
<ldap:attribute>
|
<ldap:name>ds-cfg-queue-size</ldap:name>
|
</ldap:attribute>
|
</adm:profile>
|
</adm:property>
|
<adm:property name="log-file" mandatory="true">
|
<adm:synopsis>
|
The file name to use for the log files generated by the
|
<adm:user-friendly-name />.
|
The path to the file is relative to the server root.
|
</adm:synopsis>
|
<adm:requires-admin-action>
|
<adm:component-restart />
|
</adm:requires-admin-action>
|
<adm:syntax>
|
<adm:string>
|
<adm:pattern>
|
<adm:regex>.*</adm:regex>
|
<adm:usage>FILE</adm:usage>
|
<adm:synopsis>
|
A path to an existing file that is readable by the server.
|
</adm:synopsis>
|
</adm:pattern>
|
</adm:string>
|
</adm:syntax>
|
<adm:profile name="ldap">
|
<ldap:attribute>
|
<ldap:name>ds-cfg-log-file</ldap:name>
|
</ldap:attribute>
|
</adm:profile>
|
</adm:property>
|
<adm:property name="log-file-permissions" mandatory="true">
|
<adm:synopsis>
|
The UNIX permissions of the log files created by this
|
<adm:user-friendly-name />.
|
</adm:synopsis>
|
<adm:default-behavior>
|
<adm:defined>
|
<adm:value>640</adm:value>
|
</adm:defined>
|
</adm:default-behavior>
|
<adm:syntax>
|
<adm:string>
|
<adm:pattern>
|
<adm:regex>^([0-7][0-7][0-7])$</adm:regex>
|
<adm:usage>MODE</adm:usage>
|
<adm:synopsis>
|
A valid UNIX mode string. The mode string must contain
|
three digits between zero and seven.
|
</adm:synopsis>
|
</adm:pattern>
|
</adm:string>
|
</adm:syntax>
|
<adm:profile name="ldap">
|
<ldap:attribute>
|
<ldap:name>ds-cfg-log-file-permissions</ldap:name>
|
</ldap:attribute>
|
</adm:profile>
|
</adm:property>
|
<adm:property name="time-interval" advanced="true">
|
<adm:synopsis>
|
Specifies the interval at which to check whether the log files
|
need to be rotated.
|
</adm:synopsis>
|
<adm:default-behavior>
|
<adm:defined>
|
<adm:value>5s</adm:value>
|
</adm:defined>
|
</adm:default-behavior>
|
<adm:syntax>
|
<adm:duration base-unit="ms" lower-limit="1" />
|
</adm:syntax>
|
<adm:profile name="ldap">
|
<ldap:attribute>
|
<ldap:name>ds-cfg-time-interval</ldap:name>
|
</ldap:attribute>
|
</adm:profile>
|
</adm:property>
|
<adm:property name="buffer-size" advanced="true">
|
<adm:synopsis>Specifies the log file buffer size.</adm:synopsis>
|
<adm:default-behavior>
|
<adm:defined>
|
<adm:value>64kb</adm:value>
|
</adm:defined>
|
</adm:default-behavior>
|
<adm:syntax>
|
<adm:size lower-limit="1" />
|
</adm:syntax>
|
<adm:profile name="ldap">
|
<ldap:attribute>
|
<ldap:name>ds-cfg-buffer-size</ldap:name>
|
</ldap:attribute>
|
</adm:profile>
|
</adm:property>
|
<adm:property name="auto-flush" advanced="true">
|
<adm:synopsis>
|
Specifies whether to flush the writer after every log record.
|
</adm:synopsis>
|
<adm:description>
|
If the asynchronous writes option is used, the writer is
|
flushed after all the log records in the queue are written.
|
</adm:description>
|
<adm:default-behavior>
|
<adm:defined>
|
<adm:value>true</adm:value>
|
</adm:defined>
|
</adm:default-behavior>
|
<adm:syntax>
|
<adm:boolean />
|
</adm:syntax>
|
<adm:profile name="ldap">
|
<ldap:attribute>
|
<ldap:name>ds-cfg-auto-flush</ldap:name>
|
</ldap:attribute>
|
</adm:profile>
|
</adm:property>
|
<adm:property name="append">
|
<adm:synopsis>
|
Specifies whether to append to existing log files.
|
</adm:synopsis>
|
<adm:default-behavior>
|
<adm:defined>
|
<adm:value>true</adm:value>
|
</adm:defined>
|
</adm:default-behavior>
|
<adm:syntax>
|
<adm:boolean />
|
</adm:syntax>
|
<adm:profile name="ldap">
|
<ldap:attribute>
|
<ldap:name>ds-cfg-append</ldap:name>
|
</ldap:attribute>
|
</adm:profile>
|
</adm:property>
|
<adm:property name="rotation-policy" multi-valued="true">
|
<adm:synopsis>
|
The rotation policy to use for the
|
<adm:user-friendly-name />
|
.
|
</adm:synopsis>
|
<adm:description>
|
When multiple policies are used, rotation will occur if any
|
policy's conditions are met.
|
</adm:description>
|
<adm:default-behavior>
|
<adm:alias>
|
<adm:synopsis>
|
No rotation policy is used and log rotation will not occur.
|
</adm:synopsis>
|
</adm:alias>
|
</adm:default-behavior>
|
<adm:syntax>
|
<adm:aggregation parent-path="/"
|
relation-name="log-rotation-policy" />
|
</adm:syntax>
|
<adm:profile name="ldap">
|
<ldap:attribute>
|
<ldap:name>ds-cfg-rotation-policy</ldap:name>
|
</ldap:attribute>
|
</adm:profile>
|
</adm:property>
|
<adm:property name="retention-policy" multi-valued="true">
|
<adm:synopsis>
|
The retention policy to use for the
|
<adm:user-friendly-name />
|
.
|
</adm:synopsis>
|
<adm:description>
|
When multiple policies are used, log files are cleaned when
|
any of the policy's conditions are met.
|
</adm:description>
|
<adm:default-behavior>
|
<adm:alias>
|
<adm:synopsis>
|
No retention policy is used and log files are never cleaned.
|
</adm:synopsis>
|
</adm:alias>
|
</adm:default-behavior>
|
<adm:syntax>
|
<adm:aggregation parent-path="/"
|
relation-name="log-retention-policy" />
|
</adm:syntax>
|
<adm:profile name="ldap">
|
<ldap:attribute>
|
<ldap:name>ds-cfg-retention-policy</ldap:name>
|
</ldap:attribute>
|
</adm:profile>
|
</adm:property>
|
<adm:property name="log-format">
|
<adm:synopsis>
|
Specifies how log records should be formatted and written to the HTTP
|
access log.
|
</adm:synopsis>
|
<adm:default-behavior>
|
<adm:defined>
|
<adm:value>cs-host c-ip cs-username x-datetime cs-method cs-uri-query
|
cs-version sc-status cs(User-Agent) x-connection-id x-etime</adm:value>
|
</adm:defined>
|
</adm:default-behavior>
|
<adm:syntax>
|
<adm:string>
|
<adm:pattern>
|
<adm:regex>[a-zA-Z0-9-()]+( [a-zA-Z0-9-()]+)*</adm:regex>
|
<adm:usage>FORMAT</adm:usage>
|
<adm:synopsis>
|
A space separated list of fields describing the extended log format
|
to be used for logging HTTP accesses. Available values are listed on
|
the W3C working draft http://www.w3.org/TR/WD-logfile.html
|
and Microsoft website
|
http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/676400bc-8969-4aa7-851a-9319490a9bbb.mspx?mfr=true
|
|
OpenDJ supports the following standard fields: "c-ip", "c-port",
|
"cs-host", "cs-method", "cs-uri-query", "cs(User-Agent)",
|
"cs-username", "cs-version", "s-computername", "s-ip", "s-port",
|
"sc-status".
|
|
OpenDJ supports the following application specific field extensions:
|
"x-connection-id" displays the internal connection ID assigned to
|
the HTTP client connection, "x-datetime" displays the completion
|
date and time for the logged HTTP request and its ouput is
|
controlled by the "ds-cfg-log-record-time-format" property,
|
"x-etime" displays the total execution time for the logged HTTP
|
request.
|
</adm:synopsis>
|
</adm:pattern>
|
</adm:string>
|
</adm:syntax>
|
<adm:profile name="ldap">
|
<ldap:attribute>
|
<ldap:name>ds-cfg-log-format</ldap:name>
|
</ldap:attribute>
|
</adm:profile>
|
</adm:property>
|
<adm:property name="log-record-time-format">
|
<adm:synopsis>
|
Specifies the format string that is used to generate log record
|
timestamps.
|
</adm:synopsis>
|
<adm:default-behavior>
|
<adm:defined>
|
<adm:value>dd/MMM/yyyy:HH:mm:ss Z</adm:value>
|
</adm:defined>
|
</adm:default-behavior>
|
<adm:syntax>
|
<adm:string>
|
<adm:pattern>
|
<adm:regex>.*</adm:regex>
|
<adm:usage>STRING</adm:usage>
|
<adm:synopsis>
|
Any valid format string that can be used with the
|
java.text.SimpleDateFormat class.
|
</adm:synopsis>
|
</adm:pattern>
|
</adm:string>
|
</adm:syntax>
|
<adm:profile name="ldap">
|
<ldap:attribute>
|
<ldap:name>ds-cfg-log-record-time-format</ldap:name>
|
</ldap:attribute>
|
</adm:profile>
|
</adm:property>
|
</adm:managed-object>
|