📄️ Storage
A storage plugin is a database that stores zone data. The main Store interface is backend agnostic — stores can be backed by durable data written to disk, a database engine, or even ephemeral, in-memory structures. The DefaultStore, for example, is a simple in-memory implementation.
📄️ Cache
Cache plugins implement a similar interface to storage plugins, but there are a few key differences.
📄️ Logging
Logging plugins are not intended to modify the request or response in any way, but instead should be able to dispatch a log event synchronously or asynchronously. Loggers can log anything, from metrics about query volumes to individual queries themselves. Loggers can subscribe to events from the DNSResponse object and can log data reactively. If you're using the ConsoleLogger, this step is already taken care of for you if you configure the logger to log responses: