Class AccessLogBuilder
- java.lang.Object
-
- org.glassfish.grizzly.http.server.accesslog.AccessLogBuilder
-
public class AccessLogBuilder extends Object
A simple builder to configure access logging for Grizzly.If the format is left unspecified, the default Apache combined format will be used.
If the time zone is left unspecified, the
default time zonewill be used.- Author:
- Pier Fumagalli, USRZ.com
-
-
Constructor Summary
Constructors Constructor Description AccessLogBuilder(File file)Create a newAccessLogBuilderwriting logs to the specified file.AccessLogBuilder(String file)Create a newAccessLogBuilderwriting logs to the specified file.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description AccessLogProbebuild()Build anAccessLogProbeinstance which can be injected into anHttpServer's monitoring configuration to provide access logging.AccessLogBuilderformat(String format)Set the format as aStringcompatible with the default Apache access log format that will be used by the access logs configured by this instance.AccessLogBuilderformat(AccessLogFormat format)Set theAccessLogFormatinstance that will be used by the access logs configured by this instance.ServerConfigurationinstrument(ServerConfiguration serverConfiguration)Build anAccessLogProbeinstance and directly instrument it in anHttpServer's monitoring configuration to provide access logging.AccessLogBuilderrotatedDaily()Set up automatic log-file rotation, on a daily basis.AccessLogBuilderrotatedHourly()Set up automatic log-file rotation, on a hourly basis.AccessLogBuilderrotationPattern(String rotationPattern)Set up automatic log-file rotation based on a specifiedSimpleDateFormatpattern.AccessLogBuilderstatusThreshold(int statusThreshold)Set the minimum response status that will trigger an entry in an access log configured by this instance.AccessLogBuildersynchronous(boolean synchronous)Specify whether access log entries should be writtensynchronously or not. AccessLogBuildertimeZone(String timeZone)Set the time zone that will be used to represent dates.AccessLogBuildertimeZone(TimeZone timeZone)Set the time zone that will be used to represent dates.
-
-
-
Constructor Detail
-
AccessLogBuilder
public AccessLogBuilder(String file)
Create a newAccessLogBuilderwriting logs to the specified file.- Parameters:
file- The location of the access log file.
-
AccessLogBuilder
public AccessLogBuilder(File file)
Create a newAccessLogBuilderwriting logs to the specified file.- Parameters:
file- The location of the access log file.
-
-
Method Detail
-
build
public AccessLogProbe build()
Build anAccessLogProbeinstance which can be injected into anHttpServer's monitoring configuration to provide access logging.
-
instrument
public ServerConfiguration instrument(ServerConfiguration serverConfiguration)
Build anAccessLogProbeinstance and directly instrument it in anHttpServer's monitoring configuration to provide access logging.- Parameters:
serverConfiguration- TheServerConfigurationto instrument.
-
format
public AccessLogBuilder format(AccessLogFormat format)
Set theAccessLogFormatinstance that will be used by the access logs configured by this instance.
-
format
public AccessLogBuilder format(String format)
Set the format as aStringcompatible with the default Apache access log format that will be used by the access logs configured by this instance.
-
timeZone
public AccessLogBuilder timeZone(TimeZone timeZone)
Set the time zone that will be used to represent dates.
-
timeZone
public AccessLogBuilder timeZone(String timeZone)
Set the time zone that will be used to represent dates.The time zone will be looked up by time zone identifier, and if this is invalid or unrecognized, it will default to GMT.
-
statusThreshold
public AccessLogBuilder statusThreshold(int statusThreshold)
Set the minimum response status that will trigger an entry in an access log configured by this instance.For example a threshold of
500will only generate log entries for requests that terminated in error.
-
rotatedHourly
public AccessLogBuilder rotatedHourly()
Set up automatic log-file rotation, on a hourly basis.For example, if the file name specified at construction was
access.log, files will be archived on a hourly basis with names likeaccess-yyyyMMDDhh.log.
-
rotatedDaily
public AccessLogBuilder rotatedDaily()
Set up automatic log-file rotation, on a daily basis.For example, if the file name specified at construction was
access.log, files will be archived on a daily basis with names likeaccess-yyyyMMDD.log.
-
rotationPattern
public AccessLogBuilder rotationPattern(String rotationPattern)
Set up automatic log-file rotation based on a specifiedSimpleDateFormatpattern.For example, if the file name specified at construction was
access.logand the rotation pattern specified here isEEE(day name in week), files will be archived on a daily basis with names likeaccess-Mon.log,access-Tue.log, ...
-
synchronous
public AccessLogBuilder synchronous(boolean synchronous)
Specify whether access log entries should be writtensynchronously or not. If false (the default) a
QueueingAppenderwill be used to enqueue entries and append to the final appenders when possible.
-
-