Skip to content

Commit 5c5ba9d

Browse files
alcoclaude
andauthored
Remove the call-home usage reporter (#4759)
Completely removes the call-home reporter, so Electric no longer sends anonymous usage data to checkpoint.electric-sql.com. ## What's removed - `ElectricTelemetry.CallHomeReporter`, its `Reporters.CallHomeReporter` wrapper, and the `Measurement` aggregation helper that existed solely to compute the call-home report percentiles, along with the `req`, `bypass` and `ex_json_schema` dependencies they pulled into `electric-telemetry`. - The `ELECTRIC_USAGE_REPORTING` and `ELECTRIC_TELEMETRY_URL` environment variables, the `call_home_telemetry?` / `telemetry_url` configuration options for embedded use, and `Electric.Config.parse_telemetry_url/1`. - The `installation_id` telemetry option — the call-home reporter's static info was its only consumer. The id itself is still persisted in the KV store and picked up by the OTel resource detector. - The "Anonymous usage data" section of the telemetry docs and the "Usage reporting" section of the configuration docs. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
1 parent 6804026 commit 5c5ba9d

21 files changed

Lines changed: 15 additions & 1720 deletions

File tree

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
"@core/sync-service": patch
3+
"@core/electric-telemetry": patch
4+
---
5+
6+
Remove the call-home reporter that sent anonymous usage data to checkpoint.electric-sql.com. Electric no longer phones home; the `ELECTRIC_USAGE_REPORTING` and `ELECTRIC_TELEMETRY_URL` environment variables are gone, along with the `call_home_telemetry?` and `telemetry_url` configuration options for embedded use.

packages/electric-telemetry/lib/electric/telemetry.ex

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@ defmodule ElectricTelemetry do
3535
def export_enabled?(%{reporters: reporters}) do
3636
truthy?(
3737
reporters.statsd_host ||
38-
reporters.call_home_url ||
3938
reporters.otel_metrics? ||
4039
reporters.prometheus?
4140
)

packages/electric-telemetry/lib/electric/telemetry/application_telemetry.ex

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,6 @@ defmodule ElectricTelemetry.ApplicationTelemetry do
4747
prometheus_metrics = metrics ++ Map.get(opts, :additional_prometheus_metrics, [])
4848

4949
[
50-
Reporters.CallHomeReporter.child_spec(
51-
opts,
52-
metrics: Reporters.CallHomeReporter.application_metrics()
53-
),
5450
Reporters.Otel.child_spec(opts, metrics: metrics),
5551
Reporters.Prometheus.child_spec(opts, metrics: prometheus_metrics),
5652
Reporters.Statsd.child_spec(opts, metrics: metrics)

packages/electric-telemetry/lib/electric/telemetry/call_home_reporter.ex

Lines changed: 0 additions & 291 deletions
This file was deleted.

packages/electric-telemetry/lib/electric/telemetry/ets_tables.ex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -243,7 +243,7 @@ defmodule ElectricTelemetry.EtsTables do
243243
String.contains?(name_string, ":") ->
244244
extract_type_with_separator(name_string, ":", @uuid_pattern)
245245

246-
# Pattern 2: name_stack_id (e.g., "stack_call_home_telemetry_6dd7c00b-8")
246+
# Pattern 2: name_stack_id (e.g., "stack_otel_telemetry_6dd7c00b-8")
247247
# Extract everything before the last underscore that precedes a UUID-like pattern
248248
String.contains?(name_string, "_") ->
249249
extract_type_with_separator(name_string, "_", @uuid_pattern)

0 commit comments

Comments
 (0)