Skip to main content

Module DevLog

Module DevLog 

Source
Expand description

§DevLog - Tag-filtered development logging

Controlled by LAND_DEV_LOG environment variable. The same tags work in Mountain (Rust), Air (Rust), Wind/Sky (TypeScript).

§Usage

LAND_DEV_LOG=lifecycle,grpc ./Air          # only lifecycle + gRPC
LAND_DEV_LOG=all ./Air                     # everything
LAND_DEV_LOG=short ./Air                   # everything, compressed + deduped
LAND_DEV_LOG=indexing,http ./Air           # indexing + HTTP
./Air                                      # nothing (silent daemon)

§Short Mode

LAND_DEV_LOG=short enables all tags but compresses output:

  • Long app-data paths aliased to $APP
  • Consecutive duplicate messages counted ((x14) suffix)
  • Rust log targets compressed (D::Binary::Main::EntryEntry)

§Tags (Air daemon tags)

TagScope
vfsFile stat, read, write, readdir, mkdir, delete, copy
ipcIPC routing: invoke dispatch, channel calls
configConfiguration get/set, env paths, workbench config
lifecycleStartup, shutdown, phases, window events
storageStorage get/set/delete, items, optimize
extensionsExtension scanning, activation, management
updateUpdate service: check, download, apply
grpcgRPC/Vine: server, client, connections
indexingFile system indexing, symbol extraction, watching
httpHTTP client requests, responses, retries
daemonDaemon lifecycle, lock management, signals
securityRate limiting, checksums, secure storage
metricsPrometheus-style metrics collection
airAir tracing, telemetry, OTLP emission
resilienceRetry policies, circuit breakers, timeouts
bootstrapEffect-TS bootstrap stages

Structs§

DedupState

Statics§

APP_DATA_PREFIX 🔒
DEDUP
ENABLED_TAGS 🔒
OTLP_AVAILABLE 🔒
OTLP_TRACE_ID 🔒
SHORT_MODE 🔒

Functions§

AliasPath
Replace the long app-data path with $APP in a string.
AppDataPrefix
Get the app-data path prefix for aliasing (cached).
DetectAppDataPrefix 🔒
EmitOTLPSpan
Emit an OTLP span to the local collector (Jaeger at 127.0.0.1:4318). Fire-and-forget on a background thread. Stops trying after first failure.
EnabledTags 🔒
FlushDedup
Flush the dedup buffer - prints the pending count if > 1.
GetTraceId 🔒
IsEnabled
Check if a tag is enabled.
IsShort
Whether LAND_DEV_LOG=short is active.
NowNano
rand_u64 🔒