`DerivedStream`, as part of `Pipeline`, enables the use case of querying
an existing stream, `source`, with optional conditions and aggregations.
The resulted data will then be ingested into a new stream,
`destination`.
This PR provides the feature's initial offering. Please follow below
issue to track & suggest future improvements
#4170
Co-authored-by: omkark06 <omkar@zinclabs.io>
Co-authored-by: hengfei yang <hengfei.yang@gmail.com>
- Replace first column `*` with the current second in cron expression
while saving report and alerts
- Introduce vrl functions in alerts. The new field `vrl_function` in
alert payload stores the vrl function in the alert in base64 encoded
format.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Introduced an optional field for alerts to allow the association of
VRL functions.
- Enhanced scheduling for alerts and reports by dynamically modifying
cron expressions to include the current second.
- Added a VRL function editor in the Scheduled Alert component for
improved query editing, with toggles for enhanced user interactivity.
- Improved query construction with optional parameters and enhanced
error handling for timestamp handling.
- **Bug Fixes**
- Improved robustness of the alert and report scheduling systems with
better handling of cron expressions.
- Enhanced error handling for decoding failures related to VRL functions
in alerts.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: omkark06 <omkar@zinclabs.io>