Telemetry

ZeroFS sends usage events to PostHog under a randomly generated installation ID. Telemetry is enabled by default and can be disabled in the configuration.

What Is Collected

ZeroFS sends two types of events to PostHog:

Startup Event

Sent once each time the server starts:

PropertyExamplePurpose
version2.x.yTrack adoption of new releases
oslinuxKnow which platforms to prioritize
archx86_64Know which architectures to support
backend_types3, gcs, azure, localUnderstand which storage backends are used
protocols["nfs", "9p"]Understand which protocols are used

Filesystem Stats

Sent once on startup, then every hour:

PropertyExamplePurpose
version2.x.yCorrelate stats with versions
used_bytes1073741824Understand typical filesystem sizes
used_inodes4521Understand typical file counts
max_bytes107374182400Understand quota configurations
compressionZstd(3)Understand compression preferences
cache_disk_gb10.0Understand cache sizing
cache_memory_gb2.0Understand memory cache sizing

Data Not Included in Event Properties

  • No file names, paths, or contents
  • No encryption passwords or keys
  • No cloud provider credentials
  • No account name, email address, or other user profile

Installation Identity

A random UUID is generated on first run and stored in the cache directory as zerofs-telemetry-id. It is sent as PostHog's distinct_id, allowing events from the same installation to be grouped. ZeroFS does not associate it with a user account.

Disable Telemetry

Add the following to your configuration file:

[telemetry]
enabled = false

When the [telemetry] section is absent from the config, telemetry is enabled by default.

Implementation

Telemetry uses HTTPS POST requests to PostHog's ingestion API. Events are sent asynchronously with a five-second timeout and do not block filesystem operations. Delivery errors are ignored. The source code is in src/telemetry.rs.

Was this page helpful?