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-rc.2