@ogcio/o11y-validator
v1.0.1
Published
Telemetry rules validator for OGCIO services — wraps the Go binary for npx execution
Readme
@ogcio/o11y-validator
npm wrapper for the o11y-validator Go binary. Allows running the validator via npx without installing Go.
Quick start
# Build the binary for your current platform
pnpm build:local
# Run directly
node bin/o11y-validator.mjs
# Or via npx (after publishing)
npx @ogcio/o11y-validatorEnvironment variables
The launcher reads a .env file from the current working directory. Shell env vars take precedence.
# .env
RULES_DIR=./rules
FORWARD_TO_COLLECTOR=false
LOG_LEVEL=debugRules
The validator needs a rules directory. If you do not set RULES_DIR, the
launcher downloads the rule set from GitHub at the tag matching this package's
version and caches it inside the installed package (.rules-cache/, scoped
to the package version). Subsequent runs reuse the cache — no network needed. If
the rules cannot be obtained (and RULES_DIR is unset), the launcher exits
with an error.
The repo and ref are taken from package.json (repository and
name@version). The path to the rules inside the repo is hardcoded in the
launcher as o11y-validator/rules — see the maintainer note below.
| Variable | Default | Purpose |
| -------------- | --------- | ---------------------------------------------------------- |
| RULES_DIR | (unset) | Use a local rules directory and skip downloading entirely. |
| GITHUB_TOKEN | (unset) | Raises rate limits; required if the repo is private. |
Maintainer note: if the rules directory is relocated in a future release, update
RULES_SUBPATHinbin/o11y-validator.mjsto match. It is intentionally not configurable via env.
Build for all platforms
pnpm buildCross-compiles every target with plain go build CGO disabled,
so no zig, osxcross, or macOS agent is required, darwin/arm64 is ad-hoc signed
by the Go linker automatically.
Releasing
A pre-commit hook keeps o11y-validator.lock in sync with the o11y-validator/
tree so validator changes can trigger a release of this package.
see distribution.md.
