Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,8 @@ All notable changes to this project will be documented in this file.
- SetFeatureFlagCommand added to manage on-chain feature flags for conditional behavior rollouts
- Dependencies
- Upgrade Solana SDK workspace dependencies from 2.2.7 to 2.3.x (`solana-sdk`, `solana-client`, `solana-program-test`, and others)
- Internet telemetry
- Reduce RIPE Atlas sampling interval from 6 minutes to 10 minutes to work around service limit of 100_000 samples per day

## [v0.8.11](https://github.com/malbeclabs/doublezero/compare/client/v0.8.10...client/v0.8.11) - 2026-02-27

Expand Down
6 changes: 3 additions & 3 deletions controlplane/internet-latency-collector/cmd/collector/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,9 @@ import (
const (
defaultStateDir = "/var/lib/doublezero-internet-latency-collector/state"
defaultAtlasProbesPerLocation = 1
defaultRipeAtlasSamplingInterval = 6 * time.Minute
defaultRipeAtlasSamplingInterval = 10 * time.Minute
defaultRipeAtlasMeasurementInterval = 1 * time.Hour
defaultRipeAtlasExportInterval = 6 * time.Minute
defaultRipeAtlasExportInterval = 10 * time.Minute
defaultWheresitupSamplingInterval = 6 * time.Minute
defaultLedgerSubmissionInterval = 1 * time.Minute
defaultWheresitupStateFile = "wheresitup_jobs_to_process.json"
Expand Down Expand Up @@ -94,7 +94,7 @@ var runCmd = &cobra.Command{
Use: "run",
Short: "Run ongoing data collection operations (service mode)",
Long: `Run continuous collector that creates WhereItUp jobs every interval,
RIPE Atlas measurements hourly, and exports RIPE Atlas results every 2 minutes.`,
RIPE Atlas measurements hourly, and exports RIPE Atlas results periodically.`,
Run: func(cmd *cobra.Command, args []string) {
log := collector.NewLogger(collector.LogLevel(logLevel))

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -852,8 +852,8 @@ func TestInternetLatency_RIPEAtlas_ExpectedDailyCreditsMetric(t *testing.T) {
},
}

// Test with 6 minute interval (240 samples per day)
samplingInterval := 6 * time.Minute
// Test with 10 minute interval (144 samples per day)
samplingInterval := 10 * time.Minute
err := c.RunRipeAtlasMeasurementCreation(t.Context(), false, 1, t.TempDir(), samplingInterval)
require.NoError(t, err)

Expand All @@ -862,11 +862,11 @@ func TestInternetLatency_RIPEAtlas_ExpectedDailyCreditsMetric(t *testing.T) {
// - lon gets measurement from nyc (1 source)
// - nyc gets no measurements (0 sources)
// Total sources = 2 + 1 + 0 = 3
// Expected daily credits = 3 sources * 240 samples/day = 720
// Expected daily credits = 3 sources * 144 samples/day = 432

// Note: We can't directly check the metric value in tests, but we can verify
// the log output contains the expected calculation
t.Log("Test completed - metric should show 720 expected daily credits")
t.Log("Test completed - metric should show 432 expected daily credits")
}

func TestInternetLatency_RIPEAtlas_RunRipeAtlasMeasurementCreation(t *testing.T) {
Expand Down
Loading