Snap is simple in scope and it becomes more simple when you know the terminology we use throughout the project. Here they are:
- Glossary
- Config: Global Config
- Config: Global Options
- Config: Metric Config
- Config: Plugin Config
- Metric Catalog
- Metric: Dynamic
- Metric: Namespace
- Metric Namespace: Dynamic Element
- Metric Namespace: Static Element
- Plugin
- Plugin Status
- Plugin Type: Collector
- Plugin Type: Processor
- Plugin Type: Publisher
- Snap
- Snap Telemetry
- snaptel
- snapteld
- Task
- Task Manifest
- Tribe
- Workflow
- Workflow: Distributed
- Workflow Manifest
- Values loaded at runtime of the daemon (reference)
- Values passed as command-line parameters or environmental variables (reference)
- key/value pairs shared by collector namespace in a Task Manifest (example)
- key/value pairs stored in the
config
block within a Task Manifest (example)
- List of all available metrics exposed by a running instance of the Snap daemon (reference)
- A metric is described as dynamic when it includes one or more wildcards in its namespace (reference)
- Namespaces are a series of namespace elements that uniquely identify a metric in Snap (reference)
- An element of a metric whose value is set at runtime (reference)
- An element of a metric whose value is set at load time (reference)
- An independent binary that is compatible with Snap (see Plugin Lifecycle)
- An indicator of whether a plugin meets the maintainer's recommendations for best practices (see Plugin Status)
- Gathers data and presents as a dynamically-generated namespaced metric catalog (reference)
- Extends or filters collected metrics (reference)
- Persists metrics into a target endpoint (reference)
- The project name, focused on the Snap daemon and the plugins that power its collection, processing and publishing of telemetry
- The full name of the Snap project, used mostly for easy searching (like snap-telemetry.io) or hashtag (#SnapTelemetry)
- The command-line interface (CLI) for Snap, released as a binary
- The daemon process for Snap, released as a binary
- A job running within Snap, including the API version, schedule and workflow (all documented here)
- A file that includes the API version, schedule and workflow of a Task in a declarative form (reference)
- The clustering feature of Snap, documented here
- The explicit map of how collectors, processors and publishers are used in Snap (reference)
- A workflow where one or more steps have a remote target specified (reference)
- A file that describes only the workflow of a Task (example at the bottom)