July 29
Agent Control v1.20.0
New features
- Kubernetes:
--release-nameis now optional onuninstall-agent-control; omitting it skips deleting the release's own HelmRelease/HelmRepository CRs. - On-host: added nri-apache and nri-nginx agentTypes.
- On-host: added nri-postgresql agentType.
- On-host: added nri-mysql agentType.
- On-host: added nri-memcached Agent Type.
- Log files rotated have now 30 days of retention.
- Added
agent-type validate --file <path>subcommand tonewrelic-agent-control-cliandnewrelic-agent-control-k8s-clifor schema-level validation of agent type definition files. - Extended
agent-type validatewith semantic validation: every${nr-var:X}reference indeploymentmust have a matchingvariablesdeclaration. - Enable cache for remote Agent Type registry
Security updates
- Updated rust crate kube to 4.2.0
- Updated rust crate rustls-pki-types to 1.15.1
- Updated rust crate base64 to 0.23.0
- Updated rust crate either to 1.17.0
- Updated rust crate jsonwebtoken to v11
- Updated rust crate serial_test to v4
- Updated rust crate schemars to 1.2.2
- Updated alpine/kubectl to v1.36.3
- Updated rust crate toml to 1.1.4
For a detailed description of changes, see the release notes.
July 23
Agent Control v1.19.1
Correções de bugs
- On-host: o agentType do infra foi corrigido removendo a cópia do binário nri-flex.
Atualizações de segurança
- Atualizado o crate rust clap para 4.6.4
- Crate rust tokio atualizado para 1.53.1
- Atualizado o crate rust glob para 0.3.4
- Atualizado crate rust tokio-stream para 0.1.19
- Atualizado o crate rust syn para 3.0.3
Para uma descrição detalhada das alterações, consulte as notas de versão.
July 20
Agent Control v1.19.0
New features
- On-host and Kubernetes: When an agent's type is bumped via a live remote config update, Agent Control now reconciles both per-agent and shared filesystems, deleting paths declared by the old type that no longer appear in any active agent's declarations. Co-owned shared paths still claimed by another active agent are preserved. On Kubernetes, k8s objects annotated with the old type are garbage-collected while new-type resources are left intact.
- Adds
oci-utilsCLI totest/crates/oci-test-utilsfor pushing agent packages and agent type definitions to OCI registries from the command line (dev/test tooling; not published). - On-host agent-type parsing now validates
reported_version_package: It must reference a declared package, and is required when more than one package is defined. Invalid configurations are rejected at parse time with a descriptive error. Thisreported_version_packagedetermines which version is reported asagent.version. - Adds support for
copy_from_filefor on-host "in-agent" filesystem. - Adds support for
shared_filesystemin on-host agent types. It includes a single-owner rule: Two agents claiming the same path in the shared-filesystem are invalid and reported as Failed. - On-host self-update: Skip sub-agent reconciliation when a self-update is in progress. When a single remote config both bumps the Agent Control version and changes a sub-agent's
agent_type, the changed sub-agent is no longer recreated moments before the process restarts; the new config is stored and re-applied cleanly by the restarted process, avoiding a redundant sub-agent restart and telemetry gap. - On-host: Added support for nri-redis agentType for both Linux and Windows.
- On-host health config: Replaced the flat
health.http:/health.file:fields with an explicitchecks:list. Each entry is discriminated bykind:(Process,Http, orFile). The previously implicit supervised-process health check is now declared askind: Process. An omitted or emptychecks:list disables health reporting entirely. - On-host filesystem entries (
file/dir) now always survive sub-agent stop, restart, and config-apply. A straypersistent:key in existing agent-type YAML is ignored rather than rejected.
Bug fixes
- Added identifying attributes for each package specified in the agentType as
package.version.<id>. - RPM packages now restore
local_config.yamlfrom the.rpmsavebackup left by a prior uninstall.
Security updates
- Updated rust crate bytes to 1.12.1
- Updated rust crate regex to 1.13.1
- Updated rust to v1.97.1
- Updated alpine/helm to v4.2.3
- Updated rust crate toml to 1.1.3
- Updated rust crate syn to v3
- Updated rust crate clap to 4.6.2
- Updated rust crate tokio to 1.53.0
- Updated rust crate aws-lc-rs to 1.17.3
- Updated rust crate thiserror to 2.0.19
- Updated rust crate serde to 1.0.229
- Updated rust crate async-trait to 0.1.91
- Updated rust crate futures to 0.3.33
- Updated rust crate quote to 1.0.47
- Updated rust crate serde_json to 1.0.151
For a detailed description of changes, see the release notes.
July 6
Agent Control v1.18.0
Features
- Added exponential backoff and jitter retries to OCI artifact fetches using a new
BackoffPolicy(configured underself_update.download_retry), replacing the previouswith_retries(usize, Duration)API. - Added post-download script support for OCI packages.
- Hardened service restart policies on Linux and Windows platforms (implementing
systemdrate limiting: maximum of 5 restarts within 60 seconds) to prevent crash-looping from saturating CPU capacity. - Added support for retrieving remote agent type definitions directly from OCI registries.
- Configured agent type definitions to tolerate unknown fields to ensure forward compatibility.
- Added support for creating on-host agents without defining a health check, which disables health reporting for that agent.
- Streamlined version tracking for on-host agents by deriving versions directly from OCI package metadata. This eliminates command-based version checking and removes the need for the
deployment.versionconfiguration in agent type definitions. - Replaced the
filesystemconfiguration in on-host agent type definitions with an explicit, recursive, tagged-kind tree structure where every entry declareskind: file | dir | dir_content_from_mapanddirentries nest usingentries:. - Introduced a
persistentflag (default value is set tofalse) for on-host filesystem entries; ephemeral entries are deleted when a sub-agent stops, while persistent entries remain until the agent is removed from thefleet.Reconciliationacross writes is driven by a.ac-managed-paths.jsonmanifest (reserved filename — agent types must not declare it) so paths Agent Control no longer owns are deleted while sub-agent-created files are preserved. - Introduced the
shared-filesystem-dirvariable for agent type configurations. - Extended the internal
fscrate to support file copy operations. - Removed the filesystem manifest-based prune mechanism; Agent Control no longer deletes previously-declared paths dropped by subsequent configurations; agent-managed files are now reclaimed only when the agent is removed from the fleet.
Fixes
- Fixed an on-host self-update issue where pushing an empty
version: ""string from Fleet Control incorrectly triggered an image pull of the:latestOCI tag. It now correctly treats an empty string as a no-op (), matching the behavior of an absent version field.
For a detailed description of changes, see the release notes.