Appendix A Configuration Keys

Every key lives under Machine\System\eventd\. eventd ignores unknown keys in the subtree. An invalid value is ignored and the value already in use is retained, and eventd emits a synthetic.config_change event for every change actually applied (§8.3).

A.1 Required #

No compiled-in defaults. A missing or invalid value fails startup (§8.2).

KeyTypeDescription
EventStorePathREG_SZDirectory for the event shard databases and eventd-meta.db.
LogStorePathREG_SZFile path for the log store database.
MetricStorePathREG_SZFile path for the metric store database.
QuerySocketPathREG_SZUnix socket path for queries.
LogSocketPathREG_SZUnix socket path for log ingestion.
MetricSocketPathREG_SZUnix socket path for metric ingestion.

A.2 SQLite storage #

KeyTypeDefaultRangeDescription
WalCheckpointPagesREG_DWORD1000100–100000WAL page threshold triggering a passive checkpoint, on shard, log, metric and metadata databases alike.

A.3 Event ingestion #

KeyTypeDefaultRangeDescription
StorageShardsREG_DWORD00–256Number of event shards. 0 means the CPU count.
MaxBatchSizeREG_DWORD10000100–100000Maximum events per writer transaction.
MaxBatchLatencyMsREG_DWORD10010–5000Maximum ms before an event batch commits.

A.4 Log ingestion #

KeyTypeDefaultRangeDescription
LogMaxBatchSizeREG_DWORD5000100–100000Maximum log records per transaction.
LogMaxBatchLatencyMsREG_DWORD50010–5000Maximum ms before a log batch commits.
MaxLogDatagramBytesREG_DWORD2621444096–1048576Maximum accepted log datagram size.

A.5 Metric ingestion #

KeyTypeDefaultRangeDescription
MetricMaxBatchSizeREG_DWORD5000100–100000Maximum metric samples per transaction.
MetricMaxBatchLatencyMsREG_DWORD100010–5000Maximum ms before a metric batch commits.
MaxMetricDatagramBytesREG_DWORD2621444096–1048576Maximum accepted metric datagram size.
MetricSeriesCacheSizeREG_DWORD500001000–1000000Entries in the LRU series resolution cache.

A.6 Adaptive indexing #

KeyTypeDefaultRangeDescription
AdaptiveIndexWindowHoursREG_DWORD241–168Rolling window over which query frequency is measured.
AdaptiveIndexPolicyIntervalMinutesREG_DWORD6060–1440How often the desired index set is recomputed. The minimum of 60 prevents index churn.
AdaptiveIndexCreateThresholdREG_DWORD10010–10000Queries on a field within the window needed to add it.
AdaptiveIndexDropThresholdREG_DWORD101–1000Queries below which it is removed. Less than the create threshold, which is what supplies the hysteresis.

A.7 Index shedding #

KeyTypeDefaultRangeDescription
SheddingWindowSecondsREG_DWORD3010–300Sliding window for graduated shedding.
SheddingBatchPercentREG_DWORD7550–100Percentage of batches in the window exceeding 75% of MaxBatchSize that triggers graduated shedding.
EmergencySheddingBufferPercentREG_DWORD7550–95Ring buffer fill percentage triggering emergency shedding.

A.8 Adaptive rollups #

KeyTypeDefaultRangeDescription
AdaptiveRollupWindowHoursREG_DWORD481–168Rolling window for rollup query frequency.
AdaptiveRollupScalarWindowSecondsREG_DWORD30060–86400Base window used when a scalar range query triggers rollup creation.
AdaptiveRollupCreateThresholdREG_DWORD5010–10000Queries needed to trigger rollup computation.
AdaptiveRollupDropThresholdREG_DWORD51–1000Frequency below which a pair leaves the registry. Less than the create threshold.

A.9 Retention #

KeyTypeDefaultRangeDescription
EventRetentionDaysREG_DWORD301–3650Maximum age of events.
EventRetentionMaxBytesREG_QWORD00–2^64−1Maximum total logical live size of the event shards. 0 means no limit.
LogRetentionDaysREG_DWORD141–3650Maximum age of log entries.
LogRetentionMaxBytesREG_QWORD00–2^64−1Maximum logical live size of the log store. 0 means no limit.
MetricRetentionDaysREG_DWORD901–3650Maximum age of metric samples.
MetricRetentionMaxBytesREG_QWORD00–2^64−1Maximum logical live size of the metric store. 0 means no limit.
RetentionCheckIntervalMinutesREG_DWORD601–1440How often the retention thread runs.
RetentionDeleteBatchRowsREG_DWORD10000100–100000Maximum rows deleted in one retention transaction.

A.10 Querying #

KeyTypeDefaultRangeDescription
QueryTimeoutMsREG_DWORD300001000–300000Maximum query execution time.
MaxConcurrentQueriesREG_DWORD1281–4096Concurrent queries globally, streaming and non-streaming.
MaxStreamingQueriesREG_DWORD641–1024Concurrent streaming queries globally.
MaxDistinctStreamValuesREG_DWORD1000001000–10000000Values tracked by one DISTINCT streaming query.
MaxQueryMessageBytesREG_DWORD655361024–16777216Maximum query request or response payload.

A.11 Cross-type filtering #

KeyTypeDefaultRangeDescription
CrossTypeWindowMsREG_DWORD150001000–300000Centred window for cross-type event and log existence checks.
CrossTypeMaxLookbackSecondsREG_DWORD6048003600–2592000Maximum range a cross-type filter may scan.

A.12 The security subtree #

Read-path descriptors live under Machine\System\eventd\Security\ and are not configuration in the sense above (§7.2):

Machine\System\eventd\Security\Events\*
Machine\System\eventd\Security\Events\<pattern>
Machine\System\eventd\Security\Logs\*
Machine\System\eventd\Security\Logs\<pattern>
Machine\System\eventd\Security\Metrics\*
Machine\System\eventd\Security\Metrics\<pattern>

The administrative descriptor is not here; it is admin_sd in eventd-meta.db (§3.5).

A.13 When a change takes effect #

ChangeEffect
Every tuning parameter aboveApplied immediately.
Socket pathsRestart.
Store pathsRestart.
StorageShardsRestart.
Security descriptorsNext query; the registry watch invalidates the cache.

Edit this page