Changelog
List of aperture PRs merged since 1.5.0 release. For the full list of changes, see [list of changes][changes]
fix remark validate link issues (1853)
Multi selectors (1826)
Description of change
Support for repeated selector field in all data-plane components.
![Screenshot from 2023-04-30
21-35-47](https://user-images.githubusercontent.com/18579817/235407302-efe30bed-bdcf-407c-9246-51ebdf9d9650.png)
**New Feature:**
- Support for repeated selector fields in all data-plane components
- Added `MatchWithResultCollection` method to the `MultiMatcher` struct
- New `GetSelectors()` method and related changes in various interfaces
and structs
**Documentation:**
- Updated documentation files with minor changes, including fixing
broken links, typos, and modifying titles and descriptions
> 🎉 Repeated selectors, now we're able,
> To scale our components, oh so stable!
> Docs refined, code's aligned,
> With this PR, we've truly shined! 🌟
---------
Co-authored-by: Tanveer Gill <tanveer.gillfluxninja.com>
Use connector to direct traces to logs (1807)
Implement adapter connector which converts traces to logs. Use this
adapter in pipeline instead of loopback hack.
**New Feature:**
- Added adapter connector to convert traces to logs, replacing loopback
hack
- Removed `tracestologsprocessor` factory and introduced
`adapterconnector` factory
- Removed `filelog` receiver and fake log pipeline
- Updated `OTelConfig` struct with new fields and methods
> 🎉 A new dawn for trace conversion,
> Adapter connector brings a revolution.
> Farewell to the loopback hack,
> With this update, we're on the right track! 🚀
Made the gateway address change backward compatible (1821)
**New Feature:**
- Added backward compatibility checks for older default addresses
- Updated field mappings for component conversion
> 🎉 A step back in time we take, 🕰️
> To ensure compatibility we make. 🛠️
> Field mappings now renewed, 🔄
> For a future that's well-reviewed. 🌟
Backward compatibility helper and other improvements (1818)
Description of change
* Helper function to rewrite specs for backward compatibility reduced
code repetition).
* Minor suggestions by OpenAI.
* Incorporates improvements suggested in
https://github.com/fluxninja/aperture/pull/1792
- New Feature: Improved flow control components and circuit factory logic
- Bug fix: Addressed issues in table structure and column names
- Documentation: Updated comments and documentation for better clarity
- Refactor: Modified helper functions, test cases, and function names for consistency
> 🎉 Flow control's now refined,
> With bugs and issues left behind.
> Docs are clear, code's robust,
> In this PR we place our trust. 🚀
---------
Co-authored-by: Harjot Gill <harjot.gillfluxninja.com>
Renaming components for clarity (1792)
Description of change
* Renames:
* ConcurrencyLimiter -> LoadScheduler
* AIMDConcurrencyLimiter -> AdaptiveLoadScheduler
* LoadRegulator -> Regulator
* LoadShaper -> LoadRamp
* Initial changes towards load shed confirmatory criteria
**New Feature**:
- Added flow control, load regulation, and concurrency limiting
capabilities
- Updated API definitions, SDKs, blueprints, and policy implementations
- Enhanced documentation for flow control concepts, bundled blueprints,
tutorials, and observability
> 🎉 Flow control's here to stay, 🌊
> Regulating loads, leading the way. ⚖️
> Concurrency limits refined, 🔒
> With docs and blueprints combined! 📚🔧
---------
Co-authored-by: Harjot Gill <harjot.gillfluxninja.com>
Update go-swagger (1813)
Description of change
- This update fixes adding descriptions to inner struct fields
- Removed deprecated fields
**Refactor:**
- Removed deprecated fields and updated descriptions for inner struct
fields
- Updated go-swagger package and configurations
- Renamed `BatchPrerolupConfig` to `BatchPrerollupConfig`
**Test:**
- Commented out test cases with TODO message
**Documentation:**
- Updated documentation for various configurations
> 🎉 Deprecated fields, now gone away,
> Descriptions fixed, hooray! 🥳
> Swagger package, up-to-date,
> Configurations celebrate! 🚀
---------
Co-authored-by: Hardik Shingala <hardik.shingalafluxninja.com>
Limit workload latency observations to accepted flows (1814)
Description of change
* Limit workload latency observations to accepted flows with valid
latency.
* Fix invalid signal and flux meter metrics.
* Fix Signals dashboard
**Bug fix:**
- Limit workload latency observations to accepted flows with valid
latency
- Fix invalid signal and flux meter metrics
**Documentation:**
- Correct typo in policy specification documentation
**Chore:**
- Update `prettier` package to the latest version
- Modify build processes for better maintainability
> 🎉 Oh, rejoice! The bugs we've slain, 🐛
> Metrics fixed, no more disdain. 📊
> Docs improved, a typo caught, 📝
> Prettier updated, as it ought. 🌟
---------
Co-authored-by: Harjot Gill <harjot.gillfluxninja.com>
Bundle all otel extensions in default agent image (1799)
Agent's default Dockerfile is now enabling all bundled extensions.
Thanks to that, all opentelemetry-collector-contrib-based custom metrics
receivers can be used on default agent image.
Fix feature-rollout dashboards, policy (1801)
Description of change
![Screenshot from 2023-04-24
12-19-21](https://user-images.githubusercontent.com/1553055/234094838-eb4a6d51-ca9a-4ae9-a99f-1cd25868e04b.png)
![Screenshot from 2023-04-24
12-19-39](https://user-images.githubusercontent.com/1553055/234094842-b0cf481f-736d-41e5-aca0-876a97e7b839.png)
**Refactor:**
- Updated Prometheus queries in feature rollout and signals dashboards
- Removed filters and clauses such as `valid="true"` and `by (valid)`
for improved query performance
> 🎉 Oh, the queries we've refined, 📊
> With filters and clauses left behind! 🚀
> Dashboards now lighter, yet still bright, ✨
> Our data shines with newfound might! 💪
Add agent group label to metrics (1800)
**New Feature:**
- Add `AgentGroupLabel` for better agent group identification in metrics
- Update `podCounter` metric, `newAutoScaleControlPoints`, and
`newPodNotifier` functions to support `agentGroup` parameter
- Modify `provideAutoScaleControlPoints` function to include `AgentInfo`
argument and create `PodNotifier` with `AgentGroup` value
> 🎉 A new label takes the stage, 🏷️
> Agent groups now engage. 🤖
> Metrics refined, code aligned, 📊
> Our autoscaling knowledge, we gauge! 🚀
Corrected error messages for namespace scoped installation (1797)
**Bug fix:**
- Improved error handling for forbidden errors in installation utils
- Corrected error messages for better clarity
- Added check for empty endpoints before fetching the controller client
certificate
> 🎉 Oh, rejoice and celebrate! 🥳
> For we've squashed bugs, no more to wait. 🐛
> Error handling now refined, ✨
> And clearer messages we shall find. 📜
> With endpoints checked, we're feeling great! 🚀
Export platform logger constructor so it can be used outside of Fx (1699)
New Feature:
- Added `NewLogger` function for creating logger instances with provided configuration and additional writers
- Modified `provideLogger` function to use the new `NewLogger` method
> 🎉 A logger's tale, so bold and bright,
> With new features, it takes flight.
> Additional writers join the fray,
> As we celebrate this code today! 🚀
---------
Co-authored-by: Harjot Gill <harjot.gillfluxninja.com>
support defaults on maps (1790)
SMA Component (1775)
Description of change
- Add Simple Moving Average (SMA) component to the policy language
- Fix rendering boolean type default in docs
Policy dashboard:
![Screenshot from 2023-04-21
11-19-31](https://user-images.githubusercontent.com/1553055/233707796-fb56a3c6-e5dd-4374-b55c-b1b516c8d2b6.png)
Signals dashboard:
![Screenshot from 2023-04-21
11-19-44](https://user-images.githubusercontent.com/1553055/233707779-5bff3940-f744-41e9-898e-3f7234319dfb.png)
**New Feature:**
- Added Simple Moving Average (SMA) filter component to the policy
language
**Documentation:**
- Updated documentation for the new SMA component
- Added default values to agent and controller configuration options
**Style:**
- Removed unnecessary line break in `ema.go`
- Reordered import statements in `logical_test.go`
> 🎉 A new component we bring, 🌟
> The Simple Moving Average, a useful thing! 📈
> With docs updated, users will know, 📚
> How to use it, watch their policies grow! 🌱
---------
Co-authored-by: Harjot Gill <harjot.gillfluxninja.com>
[changes]: https://github.com/fluxninja/aperture/compare/releases/aperture-controller/v1.5.0...releases/aperture-controller/v1.6.0