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 RedactableArgumentredactMeta(Object message) A redactable argument of meta data.static RedactableArgumentredactSystem(Object message) A redactable argument of system data.static RedactableArgumentredactUser(Object message) A redactable argument of user data.toString()com.couchbase.client.core.logging.RedactableArgument.ArgumentTypetype()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
-