Class RedactableArgument
java.lang.Object
com.couchbase.client.core.logging.RedactableArgument
Wraps a piece of information that is subject to log redaction.
Useful when logging sensitive information:
log.info("Opened bucket {}", RedactableArgument.redactMeta(bucketName));Or when including sensitive information in an Exception message:
throw new RuntimeException("Failed to process " + RedactableArgument.redactUser(documentId));The global redaction level is controlled by calling
LogRedaction.setRedactionLevel(RedactionLevel)
- Since:
- 1.5.3
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionmessage()
The message of this redactable argument.static RedactableArgument
redactMeta
(Object message) A redactable argument of meta data.static RedactableArgument
redactSystem
(Object message) A redactable argument of system data.static RedactableArgument
redactUser
(Object message) A redactable argument of user data.toString()
com.couchbase.client.core.logging.RedactableArgument.ArgumentType
type()
The type of this redactable argument.
-
Method Details
-
redactUser
A redactable argument of user data. User data is data that is stored into Couchbase by the application user account, including:- Key and value pairs in JSON documents, or the key exclusively
- Application/Admin usernames that identify the human person
- Query statements included in the log file collected by support that leak the document fields (Select floor_price from stock).
- Names and email addresses asked during product registration and alerting
- Usernames
- Document xattrs
- Parameters:
message
- the message to redact.- Returns:
- a new
RedactableArgument
.
-
redactMeta
A redactable argument of meta data. Metadata is logical data needed by Couchbase to store and process User data, including:- Cluster name
- Bucket names
- DDoc/view names
- View code
- Index names
- Mapreduce Design Doc Name and Definition (IP)
- XDCR Replication Stream Names
- And other couchbase resource specific meta data
- Parameters:
message
- the message to redact.- Returns:
- a new
RedactableArgument
.
-
redactSystem
A redactable argument of system data. System data is data from other parts of the system Couchbase interacts with over the network, including:- IP addresses
- IP tables
- Hosts names
- Ports
- DNS topology
- Parameters:
message
- the message to redact.- Returns:
- a new
RedactableArgument
.
-
type
public com.couchbase.client.core.logging.RedactableArgument.ArgumentType type()The type of this redactable argument. -
message
The message of this redactable argument. -
toString
-