Releases: blockopsnetwork/telescope
v0.2.4
v0.2.2
What's Changed
- build(deps): bump golang.org/x/time from 0.5.0 to 0.12.0 by @dependabot[bot] in #40
- feat: enhance logging configuration with Docker support by @segunjkf in #41
- starknet network support by @calvin-puram in #45
- build(deps): bump actions/checkout from 4 to 5 by @dependabot[bot] in #49
New Contributors
- @calvin-puram made their first contribution in #45
Full Changelog: v0.2.0...v0.2.2
Full Changelog: v0.2.0...v0.2.2
v0.2.1
Release Notes: Auto-Discovery, Configuration Generation & Enhanced Logs Support
🚀 Overview
This release introduces powerful auto-discovery and configuration generation capabilities to Telescope, along with comprehensive Docker container log collection support. These features significantly simplify the deployment and configuration of Telescope for blockchain infrastructure monitoring.
✨ New Features
1. Auto-Discovery and Configuration Generation
Telescope now automatically generates complete monitoring configurations based on simple command-line flags, eliminating the need for manual YAML configuration files.
Key Capabilities:
- Network-Based Auto-Discovery: Automatically configures appropriate scrape targets based on the selected blockchain network
- Intelligent Target Generation: Creates properly labeled scrape configs with network-specific ports and endpoints
- Zero-Config Deployment: Run Telescope with just a few flags and get a complete monitoring setup
Supported Networks:
| Network | Targets Discovered | Default Ports |
|---|---|---|
ethereum |
Execution + Consensus nodes | 6060, 8008 |
polkadot |
Relay chain + Parachains | 30333, 9933 |
hyperbridge |
Hyperbridge node | 8080 |
ssv |
Execution + Consensus + MEV-Boost + SSV-DKG + SSV node | 6060, 8008, 18550, 3030, 13000 |
2. Enhanced Logs Collection
Basic Log Collection
- Send application logs to Loki with automatic configuration
- Simple flag-based enablement:
--enable-logs=true - Automatic Loki client configuration with authentication
Docker Container Log Scraping
- NEW: Comprehensive Docker container log collection
- Automatic discovery of all running containers
- Rich metadata extraction through relabeling
- Zero-configuration Docker integration
3. Docker Logs Features
When enabled with --enable-docker-logs=true, Telescope automatically:
- Connects to Docker daemon for container discovery
- Configures comprehensive relabel rules to extract:
- Container name and log stream
- Custom Docker labels (network, client_name, group, host_type)
- Project identification labels
- Instance and location labels
- Generates complete scrape configurations for all containers
🛠️ Technical Changes
CLI Enhancements
- Added
--enable-docker-logsflag for Docker log collection - Added
--docker-hostflag (defaults tounix:///var/run/docker.sock) - Fixed pprof handler conflicts by updating pyroscope-go to v0.1.8
- Resolved build issues with conflicting pprof imports
Code Improvements
- Added new data structures for log scraping configuration:
LogScrapeConfigDockerSDConfigRelabelConfig
- Enhanced
generateFullConfig()to support Docker log scraping - Extended configuration validation for logs settings
📝 Usage Examples
Basic Metrics with Auto-Discovery
telescope \
--network=ethereum \
--project-id=my-project \
--project-name=my-project \
--telescope-username=user \
--telescope-password=pass \
--remote-write-url=https://prometheus.example.com/api/v1/writeMetrics + Basic Logs
telescope \
--network=polkadot \
--project-id=my-project \
--project-name=my-project \
--telescope-username=user \
--telescope-password=pass \
--remote-write-url=https://prometheus.example.com/api/v1/write \
--enable-logs=true \
--logs-sink-url=https://loki.example.com/loki/api/v1/push \
--telescope-loki-username=user \
--telescope-loki-password=passFull Stack with Docker Logs
telescope \
--network=ssv \
--project-id=my-project \
--project-name=my-project \
--telescope-username=user \
--telescope-password=pass \
--remote-write-url=https://prometheus.example.com/api/v1/write \
--enable-logs=true \
--enable-docker-logs=true \
--logs-sink-url=https://loki.example.com/loki/api/v1/push \
--telescope-loki-username=user \
--telescope-loki-password=pass🔧 Configuration Output
The auto-generated telescope_config.yaml includes:
For Metrics:
metrics:
configs:
- name: project_network_metrics
scrape_configs:
- job_name: project_network_node_type_0
static_configs:
- targets: [localhost:port]For Docker Logs:
logs:
configs:
- name: telescope_logs
clients:
- url: https://loki.example.com/loki/api/v1/push
basic_auth:
username: user
password: pass
scrape_configs:
- job_name: project_docker_logs
docker_sd_configs:
- host: unix:///var/run/docker.sock
refresh_interval: 5s
relabel_configs:
# Comprehensive metadata extraction🐛 Bug Fixes
- Fixed pprof handler conflicts preventing telescope binary from running
- Resolved duplicate pprof imports in server files
- Updated pyroscope-go dependency to match Grafana Agent's working version
📚 Documentation
- Added comprehensive "Auto-Discovery and Configuration Generation" section to README
- Added detailed "Logs Collection" section with Docker examples
- Updated all usage examples to reflect new capabilities
- Added complete flag reference tables
🔄 Migration Guide
For existing users:
- Remove manual YAML configuration files
- Use command-line flags for configuration
- Enable Docker logs with
--enable-docker-logs=trueif using containers - The generated
telescope_config.yamlwill be created automatically
Full Changelog: [Previous Release]...v0.3.0
What's Changed
- build(deps): bump golang.org/x/time from 0.5.0 to 0.12.0 by @dependabot in #40
Full Changelog: v0.2.0...v0.2.1
v0.2.0
🚀 Telescope v0.2.0 - Native Ethereum Metrics Integration
✨ Major Features
🔧 Native Ethereum Blockchain Monitoring
Telescope now includes built-in Ethereum blockchain metrics collection, eliminating the need to run separate ethereum-metrics-exporter instances. This integration provides comprehensive monitoring for both execution and consensus layers.
Key Capabilities:
- ✅ Execution Layer Monitoring - Block metrics, sync status, transaction pools, peer counts
- ✅ Consensus Layer Monitoring - Validator performance, attestations, fork tracking
- ✅ Module-Based Configuration - Enable only the metrics modules you need
- ✅ Dual Configuration - Support for both YAML config files and command-line flags
📊 Metric Compatibility
- 100% Compatible - All metrics maintain the same names and labels as the original
ethereum-metrics-exporter - Existing Dashboards - No modifications required for existing Grafana dashboards
- Standard Prefixes -
eth_exe_*for execution layer,eth_con_*for consensus layer
🔧 Configuration Options
Command-Line Flags
telescope --enable-features integrations-next \
--network=ethereum \
--project-id=my-project \
--project-name=my-project \
--telescope-username=user \
--telescope-password=pass \
--remote-write-url=https://prometheus.example.com/api/v1/write \
--ethereum-execution-url=http://localhost:8545 \
--ethereum-consensus-url=http://localhost:5052 \
--ethereum-execution-modules=sync,eth,net,web3,txpool \YAML Configuration
integrations:
ethereum_configs:
- instance: "ethereum_node_1"
enabled: true
autoscrape:
enable: true
metrics_instance: "ethereum_monitoring"
execution:
enabled: true
url: "http://localhost:8545"
modules: ["sync", "eth", "net", "web3", "txpool"]
consensus:
enabled: true
url: "http://localhost:5052"
event_stream:
enabled: true
topics: ["head", "finalized_checkpoint"]📊 Available Metrics
Execution Layer (eth_exe_* prefix)
- Block height and sync status
- Gas usage and transaction counts
- Peer connection information
- Transaction pool metrics
- Network and client version data
Consensus Layer (eth_con_* prefix)
- Validator performance metrics
- Attestation success rates
- Sync committee participation
- Fork tracking and finalization status
- Node version and network information
Disk Usage (eth_disk_* prefix)
- Directory size monitoring
- Configurable collection intervals
- Multiple directory support
🔧 Enhanced CLI Experience
Improved Help System
- Comprehensive flag documentation with examples
- Clear usage patterns for different deployment scenarios
- Proper Cobra CLI help formatting
Flexible Configuration
- No longer requires all flags when using config files
- Support for environment variable binding
- Validation for Ethereum integration requirements
🐳 Docker Support
The integration is fully compatible with Docker deployments:
docker run -v $(pwd)/config.yaml:/etc/telescope/telescope.yaml \
blockopsnetwork/telescope:latest \
--config-file=/etc/telescope/telescope.yaml \
--enable-features integrations-next📋 Requirements
- Important: Ethereum integration requires
--enable-features integrations-nextflag - At least one of execution URL or consensus URL, must be configured
- Docker images include all necessary dependencies
🛠️ Breaking Changes
- Ethereum integration is opt-in and requires the
integrations-nextfeature flag - New configuration structure for v2 integrations
- Flag validation changes for config file vs CLI usage
📚 Documentation
- Updated README with comprehensive Ethereum integration guide
- Complete flag reference with examples
- Configuration file templates
- Troubleshooting guide for common setup scenarios
🐛 Bug Fixes
- Fixed flag validation when using configuration files
- Resolved logging errors with configuration objects
- Improved error handling for invalid Ethereum client URLs
- Fixed Docker container compatibility with feature flags
What's Changed
- feat: integrate eth metrics exporter into telescope by @segunjkf in #32
- feat: add dependabot yaml by @segunjkf in #33
- allow external prs by @segunjkf in #36
- build(deps): bump go.opentelemetry.io/collector/pdata from 1.3.0 to 1.34.0 by @dependabot in #35
- build(deps): bump github.com/aws/aws-sdk-go-v2/feature/ec2/imds from 1.15.2 to 1.16.32 by @dependabot in #34
- build(deps): bump github.com/hashicorp/vault/api/auth/ldap from 0.2.0 to 0.10.0 by @dependabot in #38
- build(deps): bump github.com/IBM/sarama from 1.43.0 to 1.45.2 by @dependabot in #37
New Contributors
- @dependabot made their first contribution in #35
Full Changelog: v0.1.9...v0.2.0
🐳 Docker Pull Image
docker pull blockopsnetwork/telescope:v0.2.0v0.1.9
v0.1.8
v0.1.7
What's Changed
- Tiny fixes by @haroldsphinx in #25
- feat: add loki username and password cli flag feature by @segunjkf in #26
- feat: improve validation and error handling by @segunjkf in #27
Docker
docker pull blockopsnetwork/telescope:v0.1.7Full Changelog: v0.1.6...v0.1.7
v0.1.6
What's Changed
- Add SSV and Ethereum Dashboard by @haroldsphinx in #23
- Integrate support for SSV by @haroldsphinx in #24
Docker
docker pull blockopsnetwork/telescope:v0.1.6Full Changelog: v0.1.5...v0.1.6
v0.1.5
What's Changed
- feat: automate go releaser by @segunjkf in #21
- chore: Added issue creation template, pull request template, and automatic assignment of reviewers to PRs by @segunjkf in #20
- feat: build multi platform docker images by @segunjkf in #22
New Contributors
Docker
docker pull blockopsnetwork/telescope:v0.1.5Full Changelog: v0.1.3...v0.1.5
v0.1.3
What's Changed
- Blockchain Node modules by @haroldsphinx in #13
Full Changelog: v0.1.1...v0.1.2
What's Changed
- Integrate network bootstrap by @haroldsphinx in #14
- Quick Fix by @haroldsphinx in #15
- Feature/ci by @haroldsphinx in #16
- Add dashboard json by @haroldsphinx in #17
- Enable logs sink by @haroldsphinx in #19
Full Changelog: https://github.com/blockopsnetwork/telescope/commits/v0.1.3