Persistence

Configure persistent cursor for maintaining state across agent restarts.

This page covers Helm values for persistent cursor configuration.

Overview

The persistent cursor feature remembers the last read position in log files across agent restarts, ensuring no data loss during pod failures, updates, or reschedules. When enabled, Edge Delta agents save file read positions to persistent storage (host path or PersistentVolumeClaim), allowing them to resume processing from where they left off rather than re-reading entire files or missing new data.

How it works:

  1. As the agent reads log files, it tracks the current position (byte offset) for each file
  2. These positions are periodically flushed to a cursor file in persistent storage
  3. When the agent restarts, it reads the cursor file and resumes from the saved positions
  4. This prevents duplicate processing and ensures data consistency

When to use persistent cursor:

  • Mission-critical environments where data loss during agent restarts is unacceptable
  • Compliance and audit scenarios requiring guaranteed log processing without gaps
  • High-value data streams where duplicate processing would cause issues (e.g., billing, transactions)
  • Frequent pod updates in environments with aggressive deployment schedules

When NOT to use persistent cursor:

  • Ephemeral or testing environments where data consistency is not critical
  • High-throughput scenarios where the I/O overhead of cursor persistence could impact performance
  • Stateless architectures preferring simpler agent deployments without persistent storage dependencies

See Troubleshooting Persisting Cursor for detailed configuration guidance and File Source for node-level cursor settings.

Configuration

Persisting Cursor Properties - Enabled

Variable: persistingCursorProps.enabled

Description: Enables or disables the persistent cursor feature.

Example: persistingCursorProps.enabled=false

Persisting Cursor Properties - Container Mount Path

Variable: persistingCursorProps.containerMountPath

Description: The container mount path to keep the persisting cursor state.

Example: /var/lib/edgedelta

Persisting Cursor Properties - Host Mount Path

Variable: persistingCursorProps.hostMountPath

Description: The host mount path to keep the persisting cursor state.

Example: /var/lib/edgedelta