Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement Command-Line Flags Parsing for Events, Source, and Enrichment #4446

Closed
8 tasks
ShohamBit opened this issue Dec 18, 2024 · 1 comment
Closed
8 tasks
Assignees

Comments

@ShohamBit
Copy link
Collaborator

Background
We’re introducing command-line flags to complement the config file. Users should be able to specify or override configurations directly through flags. In this phase, we’ll focus on implementing and parsing flags related to Events, Source, and Enrichment settings.

Tasks

Event Flags

  • --event <event_name>.version=<version>: Parse and apply event version.
  • --event <event_name>.data-fields=<fields>: Parse and apply event data fields.

Source Flags

  • --source file=<path>: Set the source file path for events.

Enrichment Flags

  • --enrich container.enabled=<true/false>: Enable or disable container enrichment.
  • --enrich resolve-fd=<true/false>: Enable or disable file descriptor resolution.
  • --enrich exec-hash.enabled=<true/false>: Enable or disable execution hash calculation.
  • --enrich exec-hash.mode=<mode>: Set the mode for execution hash calculation (inode, dev-inode, or digest-inode).
  • --enrich user-stack-trace=<true/false>: Enable or disable user stack trace enrichment.

Acceptance Criteria

  • Flags can be parsed without errors.
  • Correct validation:
    • Invalid values produce clear error messages.
    • Missing required parts (like <event_name>) result in helpful error messages.
  • Flag settings are stored in a structured format ready to be merged with config file settings.

Why This Matters
By allowing users to specify and override these particular configurations via flags, we offer flexibility and control. This helps users test scenarios or quickly change settings without modifying their config file, ultimately making the system more user-friendly and adaptable.

@yanivagman
Copy link
Collaborator

Part of #4453

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants