vcrreceiver

package module
v0.154.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 9, 2026 License: Apache-2.0 Imports: 11 Imported by: 0

README

VCR Receiver

The OpenTelemetry Verbatim Capture & Replay (VCR) toolset enables full-fidelity capture and replay of all telemetry data stored on disk. It replays previously captured telemetry while preserving original event timestamps, allowing you to simulate realistic traffic timing independent of when the data was captured.

Status
Stability development: traces, metrics, logs, profiles
Distributions []
Issues Open issues Closed issues
Code coverage codecov
Code Owners @atoulme, @robertgustafsonsplunk, @garrett-splunk

Overview

The receiver reads telemetry from JSON files stored in a "TAPE" (Telemetry Archive for Playback & Emulation). Each tape contains OpenTelemetry data encoded using Protobuf JSON and follows the OpenTelemetry Protocol (OTLP).

1. Raw Input Files

The receiver watches a directory for files named: raw_(metrics|traces|logs|profiles)_#.json. They contain contain OTLP data serialized using the OpenTelemetry File Exporter.

2. Tape Creation

Raw files are converted into tapes, named: tape_(metrics|traces|logs|profiles)_<earliest_event_ts>-<latest_event_ts>.json. Tapes are organized by event time, not by file creation time or capture time.

3. Replay Engine
  • Tapes are read in chronological order based on original event timestamps.
  • Telemetry is replayed according to the original timing between events, accurately reproducing real-world telemetry flow.
  • Once the end of the final tape is reached, the receiver loops back and begins replaying from the first event.

Key Features

  • True Time-Based Replay
    Honors original event timestamps and relative timing between events.

  • Deterministic Telemetry Playback
    Ideal for testing pipelines, demos, load simulations, and debugging without live data.

  • Continuous Looping
    Automatically restarts playback after reaching the end of the tape set.

  • OTLP-Compatible
    Works with telemetry serialized via the OpenTelemetry File Exporter.

Quick Start

The following settings are required:

  • include_raw: set a directory where to look for raw files to include in data collection
  • include_tape: set a directory where to look for and place processed raw files

Example:

receivers:
  vcr:
    include_raw:
      - "/var/log/raw/*.log"
    exclude_raw:
      - "/var/log/raw/example.log"
    include_tape:
      - "/var/log/tape/"

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewFactory

func NewFactory() receiver.Factory

Types

type Config

type Config struct {
	IncludeRaw  []string `mapstructure:"include_raw"`
	ExcludeRaw  []string `mapstructure:"exclude_raw"`
	IncludeTape []string `mapstructure:"include_tape"`
}

Directories

Path Synopsis
internal
metadata
Package metadata contains the autogenerated telemetry and build information for the receiver/vcr component.
Package metadata contains the autogenerated telemetry and build information for the receiver/vcr component.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL