Skip to content

Releases: blockopsnetwork/telescope

v0.2.4

11 Dec 00:29
ab531df

Choose a tag to compare

What's Changed

  • build(deps): bump actions/checkout from 5 to 6 by @dependabot[bot] in #61
  • fix: upgrade Docker SDK to v25 for API version 1.44 compatibility by @segunjkf in #62

Full Changelog: v0.2.2...v0.2.4

v0.2.2

18 Aug 15:15
a9b2f2f

Choose a tag to compare

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

Full Changelog: v0.2.0...v0.2.2

Full Changelog: v0.2.0...v0.2.2

v0.2.1

04 Jul 13:04

Choose a tag to compare

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-logs flag for Docker log collection
  • Added --docker-host flag (defaults to unix:///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:
    • LogScrapeConfig
    • DockerSDConfig
    • RelabelConfig
  • 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/write

Metrics + 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=pass

Full 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:

  1. Remove manual YAML configuration files
  2. Use command-line flags for configuration
  3. Enable Docker logs with --enable-docker-logs=true if using containers
  4. The generated telescope_config.yaml will 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

27 Jun 14:34
0deed9b

Choose a tag to compare

🚀 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-next flag
  • 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-next feature 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

Full Changelog: v0.1.9...v0.2.0

🐳 Docker Pull Image

docker pull blockopsnetwork/telescope:v0.2.0

⚠️ Migration Note: This release maintains backward compatibility. Existing configurations will continue to work unchanged. The Ethereum integration is completely optional and requires explicit enablement.

v0.1.9

17 Mar 12:48
3542c71

Choose a tag to compare

What's Changed

Full Changelog: v0.1.8...v0.1.9

Docker

docker pull blockopsnetwork/telescope:v0.1.9

v0.1.8

17 Mar 12:32
1760eaf

Choose a tag to compare

What's Changed

Full Changelog: v0.1.7...v0.1.8

Docker

docker pull blockopsnetwork/telescope:v0.1.8

v0.1.7

28 Jan 20:09
946e455

Choose a tag to compare

What's Changed

Docker

docker pull blockopsnetwork/telescope:v0.1.7

Full Changelog: v0.1.6...v0.1.7

v0.1.6

02 Oct 10:56
b51bb23

Choose a tag to compare

What's Changed

Docker

docker pull blockopsnetwork/telescope:v0.1.6

Full Changelog: v0.1.5...v0.1.6

v0.1.5

24 Jun 16:10
b1cea11

Choose a tag to compare

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.5

Full Changelog: v0.1.3...v0.1.5

v0.1.3

01 Apr 13:45
56a79bf

Choose a tag to compare

What's Changed

Full Changelog: v0.1.1...v0.1.2

What's Changed

Full Changelog: https://github.com/blockopsnetwork/telescope/commits/v0.1.3