Aperture v2.24.0-rc.1
Pre-releaseChangelog
List of aperture PRs merged since 2.23.0 release. For the full list of changes, see list of changes
Revise API keys terminology (#2954)
Description of change
- Revise API keys terminology
- Agent API Key -> API Key
- Personal API Key -> Personal Access Token
-
New Features
-
Introduced a new
AccessToken
field for enhanced security and
authentication. -
Added a search bar to the main interface for improved user experience.
-
Implemented a new
Search
functionality for fetching and displaying
results. -
Documentation
-
Updated all references from "Agent API Key" to "API Key" across
various documentation pages.- Provided instructions for creating and using personal access tokens.
-
Clarified the usage of API keys within SDK initialization and
configuration. -
Refactor
-
Deprecated the
APIKey
field in favor of the newAccessToken
field
for user authentication. -
Updated flag names from
api-key
toaccess-token
in command-line
interface options. -
Style
- Enhanced styles for the new search bar component.
-
Chores
-
Renamed environment variables and parameters to align with the new
authentication approach.- Updated script logic to utilize
access_token
instead ofapi_key
.
- Updated script logic to utilize
-
Bug Fixes
-
Addressed issues with backward compatibility by ensuring new
APIKey
fields accept previousAgentAPIKey
values.
Caching (#2935)
-
New Features
-
Introduced caching capabilities to the FlowControlService with new
RPCs for cache management. -
Added cache key and value fields to request and response messages for
enhanced service functionality. -
Implemented a new cache package with upsert and delete operations for
distributed caching. -
Expanded SDKs with new cache-related types and methods for managing
cached values. -
Enhancements
- Updated SDKs to include new cache-related RPCs and message types.
-
Improved error handling and added new utility functions in SDKs for
better integration with caching features. -
Refactored existing code to accommodate caching logic and improve
readability. -
Documentation
-
Updated example usage in SDKs to demonstrate new caching features and
API changes. -
Refactor
-
Renamed packages and updated import paths to align with new caching
functionality.- Replaced logging packages for consistency across the codebase.
-
Style
-
Made minor adjustments to code formatting for better consistency and
readability. -
Chores
-
Updated Makefile to copy new generated SDK stubs for flow control to
respective SDK directories.
Co-authored-by: Hasit Mistry [email protected]
Csharp sdk (#2930)
Docs aperture infra (#2936)
Here are the release notes for the pull request:
-
Documentation Updates
-
Updated installation path and documentation links across various
guides and references to reflect the new directory structure, changing
from/self-hosting/
to/aperture-for-infra/
. -
Introduced a new "API Quota Management" guide with detailed
instructions and visual aids. -
Added a new "Per-user Rate Limiting" guide with comprehensive
strategy, configuration, and implementation details. -
Modified existing documentation to update references to "Agent API
Keys" to "Define Control Points" in the Aperture Cloud UI. -
Updated code examples in SDK usage guides to align with the latest
Aperture SDK interfaces and best practices. -
New Features
-
Added new documentation pages for "Define Control Points" and
"Per-user Rate Limiting" with detailed explanations and code examples. -
Refactor
-
Changed the title from "Self-Hosting Aperture" to "Aperture for Infra"
in the main documentation page to reflect product rebranding. -
Chores
-
Adjusted sidebar positions and updated keywords in documentation
metadata for better organization and searchability. -
Updated Makefile and shell scripts to align with the new documentation
paths. -
Style
-
Made minor text adjustments in sign-up instructions and other
documentation pages for clarity and consistency.
Co-authored-by: Sudhanshu Prajapati [email protected]
Co-authored-by: Jai Desai [email protected]
Update Sampler label_key to session_label_key (#2929)
-
Refactor
-
Renamed a configuration field to better reflect its purpose for
session labeling. -
Documentation
-
Updated configuration specifications to align with the new field names
and types.- Provided revised descriptions for the updated configuration fields.
-
Style
-
Adjusted the JSON structure in documentation examples to match the new
configuration schema.
Blueprints cleanup (#2928)
Description of change
-
New Features
-
Introduced
AdaptiveLoadScheduler
field to enhance rate limiting
capabilities. -
Added new
limit_by_label_key
configuration parameter for more
precise rate limiting. -
Documentation
-
Updated documentation to reflect new rate limiting configuration
options. -
Deprecated usage instructions for the old
label_key
field in favor
oflimit_by_label_key
. -
Refactor
-
Renamed
label_key
tolimit_by_label_key
across various
configuration files and code to align with new rate limiting strategy. -
Bug Fixes
-
Adjusted Grafana dashboard conditional checks to accommodate the new
limit_by_label_key
field. -
Chores
-
Cleaned up comments and descriptions in proto files to streamline the
configuration process.
Add support for workload_label_key in Scheduler configuration (#2927)
-
Documentation
- Updated comments for clarity in policy language definitions.
-
Revised configuration object descriptions in documentation for better
understanding. -
Modified parameter types and references in blueprint documentation to
reflect new configurations. -
New Features
- Introduced new configuration keys for scheduling policies.
-
Refactor
-
Removed unused
flatten_config
function from the blueprint assets
generator. -
Changed how configuration defaults are structured in quota scheduling.
- Updated policy library to use direct parameter references.
-
Bug Fixes
-
Fixed configuration handling in quota scheduling and rate limiting
blueprints. -
Style
- Enhanced consistency in comments and documentation.
-
Chores
-
Altered sample config rendering logic by setting
is_dynamic_config
to true.
Add support for Alerter in Quota Scheduler (#2926)
The existing bullet-point list is still valid and accurately summarizes
the changes. No updates are necessary.
Update go to v1.21.4 (#2923)
- Chores
- Updated Golang version from 1.21.3 to 1.21.4 across multiple
Dockerfiles, improving the Golang environment and tooling. - Enhanced cache management in CircleCI configuration files for better
system caching behavior.
agent group label for flowcontrol_decisions_total metric (#2921)
Description of change
- Add agent group label for the flowcontrol_decisions_total metric
Signed-off-by: Sahil Lakhwani [email protected]
Remove unused dashboard config from blueprints (#2918)
- Refactor
- Updated the structure of the main configuration file to handle
policies instead of both policies and dashboards. - Bug Fixes
- Removed dashboard configurations from various sections of the
codebase, focusing on policy handling. - Documentation
- Updated contributing guidelines and various documentation files to
reflect the removal of dashboard configurations.
Add required policy labels for ACCEPT_PERCENTAGE (#2919)
- Bug Fixes
- Improved accuracy of rate limiting by considering specific policy
parameters in calculations.
Fix query for ACCEPT_PERCENTAGE signal (#2917)
Separate dashboard sub-command for dashboard generation (#2914)
Description of change
blueprints generate
only generates graphs and policy- A new
dashboard
sub-command which will only generate the dashboards - Keep the
dashboard_group.libsonnet
just as a signature for backward
compatibility of aperturectl - Move dashboards related mixins to a separate top-level directory so
blueprints generate
doesn't have to pull all the grafana dependencies
- New Features
- Introduced a new command
dashboard
to generate dashboards for
Aperture.- Added a search functionality to pull content from a URI.
- Bug Fixes
- Updated file paths and names used for rendering dashboards.
- Refactor
- Replaced several local imports and function calls with a new function
for managing components. - Replaced direct function calls with calls to functions from the
utils
package. - Documentation
- Added a new markdown file for the "aperturectl dashboard" command,
providing details about its usage, options, and related commands. - Updated the documentation to include the new command for generating a
dashboard usingaperturectl
.
Add support for Alerter in Rate Limiter (#2899)
Description of change
- Make nested component for rate limiter that in-turn makes the private
rate limiter component - Introduce rate limiter private component
- Separate out component construction from config sync of rate limiter
-
New Features
-
Introduced a new Rate Limiter component with enhanced functionality
and configuration options. -
Added an alert system to notify when more than 90% of requests are
being rate-limited. -
Bug Fixes
-
Adjusted the metrics scrape interval for better performance
monitoring. -
Documentation
-
Updated the documentation for the Rate Limiter component, including
new sections and updated descriptions. -
Refactor
-
Updated the version of the "com.google.protobuf" plugin for better
compatibility and performance.
Streamline dashboard generation (#2905)
-
New Features
-
Enhanced Grafana dashboard with new panels for better data
visualization.- Introduced a refresh interval and time range for the dashboard.
-
Added support for generating multiple dashboards based on policy file.
- Improved search functionality with additional filters.
-
Bug Fixes
- Updated Grafonnet version to fix potential issues.
-
Refactor
-
Updated import statements and function calls for better code
organization. -
Chores
-
Increased verbosity of the "aperturectl" tool for detailed output
during blueprint generation.