You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
TelemetryFlow Agent (tfo-agent) is a custom-built enterprise-grade telemetry collection agent written in Go. Built on the standard OpenTelemetry Go SDK v1.40.0, tfo-agent provides a purpose-built CLI with Cobra commands, custom configuration format, and TelemetryFlow-specific features while maintaining full compatibility with the OTEL ecosystem.
Key Differentiators
Feature
tfo-agent (Custom)
OTEL Collector
SDK Base
OpenTelemetry SDK v1.40.0
OTEL Collector
CLI Framework
Cobra with subcommands
Standard OTEL
Config Format
Custom YAML with enabled flags
Standard OTEL YAML
Banner/Branding
Custom ASCII art banner
None
Build System
Single Go binary
OCB-generated
Commands
start, version, config
--config only
TelemetryFlow Ecosystem Alignment
TFO-Agent is fully aligned with the TelemetryFlow ecosystem, sharing the same OpenTelemetry SDK version across all components:
graph LR
subgraph "TelemetryFlow Ecosystem v1.1.7"
subgraph "Instrumentation"
SDK[TFO-Go-SDK<br/>OTEL SDK v1.40.0]
end
subgraph "Collection"
AGENT[TFO-Agent<br/>OTEL SDK v1.40.0]
end
subgraph "Processing"
COLLECTOR[TFO-Collector<br/>OTEL v0.147.0]
end
end
APP[Application] --> SDK
SDK -->|OTLP| AGENT
HOST[Host Metrics] --> AGENT
AGENT -->|OTLP gRPC/HTTP| COLLECTOR
COLLECTOR --> BACKEND[TelemetryFlow<br/>Platform]
style SDK fill:#81C784,stroke:#388E3C
style AGENT fill:#64B5F6,stroke:#1976D2
style COLLECTOR fill:#FFB74D,stroke:#F57C00
Loading
Component
Version
OTEL Base
Description
TFO-Agent
v1.1.9
SDK v1.40.0
Telemetry collection agent
TFO-Go-SDK
v1.1.9
SDK v1.40.0
Go instrumentation SDK
TFO-Collector
v1.1.8
Collector v0.147.0
Central telemetry collector
This alignment ensures:
Consistent telemetry format across all components
Seamless integration between agent and SDK instrumentation
Unified authentication using TelemetryFlow credentials (tfk_xxx / tfs_xxx)
# Build the agent
make build
# Output: ./build/tfo-agent
Run
# Show version with banner
./build/tfo-agent version
# Start with configuration
./build/tfo-agent start --config configs/tfo-agent.yaml
# Show parsed configuration
./build/tfo-agent config --config configs/tfo-agent.yaml
Verify
# Check health
curl http://localhost:13133/
# Check metrics
curl http://localhost:8888/metrics
sequenceDiagram
participant App as Application
participant Agent as TFO-Agent
participant Buffer as Disk Buffer
participant Collector as TFO-Collector
App->>Agent: OTLP gRPC/HTTP
Agent->>Agent: Batch & Process
Agent->>Buffer: Store (if offline)
Agent->>Collector: Export OTLP
Collector-->>Agent: ACK
Note over Agent,Buffer: Resilient buffering during outages
# Build Commands
make # Build agent (default)
make build # Build for current platform
make build-all # Build for all platforms
make build-linux # Build for Linux
make build-darwin # Build for macOS# Development
make run # Build and run
make dev # Run with go run
make test# Run tests
make lint # Run linter# Other
make clean # Clean artifacts
make version # Show version info
make help# Show all commands
Build Flags
Version information is injected at build time via ldflags: