QueryLogObserver

Logs every failed query by who must act on it:

  • a rejection the caller can fix (an error-catalog violation, a missing caller scope, a state read's parameter) at DEBUG, by its message alone: it is the client's error, answered 4xx, and logging it louder lets callers flood the log; so is a state read answered as not found, whatever the reason, which the audit keeps;

  • a storage that cannot be reached (QueryStorageUnavailableException, answered 503 with Retry-After) at WARN, by its message and its redacted cause chain: an outage, not a defect, and every query meets it until it ends;

  • a server fault the core states (QueryExecutionException) at ERROR, by its message and its cause chain with every message redacted: a cause can hold record values (a failing mask strategy sees the raw value, a storage driver echoes the query), so only each cause's class name and stack trace reach the log;

  • any other failure at ERROR with its stack trace.

Constructors

Link copied to clipboard
constructor()

Types

Link copied to clipboard

Functions

Link copied to clipboard
open override fun onError(aggregateType: AggregateType, queryType: QueryType, error: Throwable)