Class RedactableArgument
- java.lang.Object
-
- com.couchbase.client.core.logging.RedactableArgument
-
public class RedactableArgument extends Object
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 callingLogRedaction.setRedactionLevel(RedactionLevel)
- Since:
- 1.5.3
- See Also:
LogRedaction
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description String
message()
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.String
toString()
com.couchbase.client.core.logging.RedactableArgument.ArgumentType
type()
The type of this redactable argument.
-
-
-
Method Detail
-
redactUser
public static RedactableArgument redactUser(Object message)
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
public static RedactableArgument redactMeta(Object message)
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
public static RedactableArgument redactSystem(Object message)
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
public String message()
The message of this redactable argument.
-
-