Package com.azure.core.http.policy
Enum HttpLogDetailLevel
- All Implemented Interfaces:
Serializable,Comparable<HttpLogDetailLevel>,java.lang.constant.Constable
The
HttpLogDetailLevel class is an enumeration of the levels of detail to log on HTTP messages.
This class is useful when you need to control the amount of information that is logged during the execution of HTTP requests. It provides several levels of detail, ranging from no logging at all to logging of headers and body content.
Code sample:
In this example, an HttpLogOptions is created and the log level is set to
HttpLogDetailLevel.BODY_AND_HEADERS. This means that the URL, HTTP method, headers, and body content of
each request and response will be logged. The HttpLogOptions is then used to create an
HttpLoggingPolicy, which can then be added to the pipeline.
HttpLogOptions logOptions = new HttpLogOptions(); logOptions.setLogLevel(HttpLogDetailLevel.BODY_AND_HEADERS); HttpLoggingPolicy loggingPolicy = new HttpLoggingPolicy(logOptions);
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>> -
Enum Constant Summary
Enum ConstantsEnum ConstantDescriptionLogs only URLs, HTTP methods, and time to finish the request.Logs everything in BASIC, plus all the request and response body.Logs everything in HEADERS and BODY.Logs everything in BASIC, plus all the request and response headers.Logging is turned off. -
Method Summary
Modifier and TypeMethodDescriptionbooleanWhether a body should be logged.booleanWhether headers should be logged.booleanWhether a URL should be logged.static HttpLogDetailLevelReturns the enum constant of this type with the specified name.static HttpLogDetailLevel[]values()Returns an array containing the constants of this enum type, in the order they are declared.
-
Enum Constant Details
-
NONE
Logging is turned off. -
BASIC
Logs only URLs, HTTP methods, and time to finish the request. -
HEADERS
Logs everything in BASIC, plus all the request and response headers. Values of the headers will be logged only for allowed headers. SeeHttpLogOptions.getAllowedHeaderNames(). -
BODY
Logs everything in BASIC, plus all the request and response body. Note that only payloads in plain text or plain text encoded in GZIP will be logged. The response body will be buffered into memory even if it is never consumed by an application, possibly impacting performance. -
BODY_AND_HEADERS
Logs everything in HEADERS and BODY. Values of the headers will be logged only for allowed headers. SeeHttpLogOptions.getAllowedHeaderNames(). The response body will be buffered into memory even if it is never consumed by an application, possibly impacting performance.
-
-
Method Details
-
values
Returns an array containing the constants of this enum type, in the order they are declared.- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)- Parameters:
name- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException- if this enum type has no constant with the specified nameNullPointerException- if the argument is null
-
shouldLogUrl
public boolean shouldLogUrl()Whether a URL should be logged.- Returns:
- Whether a URL should be logged.
-
shouldLogHeaders
public boolean shouldLogHeaders()Whether headers should be logged.- Returns:
- Whether headers should be logged.
-
shouldLogBody
public boolean shouldLogBody()Whether a body should be logged.- Returns:
- Whether a body should be logged.
-