Open-Source Wikis

/

etcd

/

Modules

/

tools

etcd-io/etcd

tools

Internal developer and operator tools. Source: tools/.

Purpose

tools/ is a grab bag of helpers that are too specific to live in production code but too useful to be hidden in scripts. Three of them are independently-tagged Go modules; the rest are simple main packages built by make tools.

Inventory

Tool Purpose
tools/benchmark/ Workload generator; make bench-put is a wrapper. Used to produce repeatable throughput numbers for releases.
tools/check-grpc-experimental/ Counterpart of make verify-grpc-experimental; flags new uses of grpc.experimental.*.
tools/etcd-dump-db/ Iterates bbolt buckets, dumps revisions, raw key/value pairs. Heavily used in postmortems.
tools/etcd-dump-logs/ Decodes WAL files into human-readable form (term, index, type, payload).
tools/etcd-dump-metrics/ Boots a member, scrapes /metrics, outputs the full metric catalogue — CI uses it to detect accidental drops.
tools/local-tester/ Tiny Procfile-driven cluster with deterministic faults; useful when you don't need the full robustness suite.
tools/mod/ Independent Go module pinning build tools (e.g. protoc-gen-grpc-gateway, gofail).
tools/proto-annotations/ Engine behind make verify-proto-annotations.
tools/rw-heatmaps/ Renders read/write throughput heatmaps from benchmark output.
tools/testgrid-analysis/ Independent Go module that ingests Prow testgrid data and produces flake reports.

How they're built

scripts/build_tools.sh builds the main packages into ./bin/. The independent modules under tools/mod/, tools/rw-heatmaps/, and tools/testgrid-analysis/ use their own go.mod and are listed in go.work.

Linting / config

tools/.golangci.yaml, tools/.markdownlint.jsonc, tools/.yamllint, and tools/.yamlfmt live at the top of tools/ and apply to the whole repository.

Entry points for modification

  • New CI-only checker → tools/<name>/ plus a make verify-<name> target wired through scripts/test.sh.
  • New benchmark scenario → extend tools/benchmark/ (Cobra subcommand), wire into scripts/benchmark_test.sh.
  • New postmortem helper → match the style of tools/etcd-dump-db/ and tools/etcd-dump-logs/.

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

tools – etcd wiki | Factory