Infrastructure Agent Release Notes

Thursday, October 17, 2019 - 11:30

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Changed

  • Agent service binary is now newrelic-infra-service instead of newrelic-infra. Later is now a child process spawned by the prior. See further details.

Added

  • Command channel. Enables NR platform to trigger commands to agents via command-api HTTPS endpoint . See further details.
  • Added log entry for when initializing docker client fails: unable to initialize docker client.

Bug fixes

  • Disabled keep-alive on cloud metadata requests to avoid leaking open connections.
Monday, October 7, 2019 - 11:30

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Changed

Linux

  • Better error handling for NFS support.
  • HostInfo plugin to provide uptime for older distros.

Bug fixes

  • The agent will reuse network connections again. Since v1.3.18, the agent created a new connection on each metrics post. Not reusing the connections may lead metrics to be accumulated and submitted with long delays in systems where the connection establishment is slow.
Monday, September 23, 2019 - 17:30

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Added

  • Linux: Added additional checks to confirm the user ID to determine whether the agent is running as a root user.

Changed

  • Using a new endpoint for Agent identity retrieval to mitigate the hostname flipping issue. This change was introduced for the Windows Agent 1.5.37, and now is also active for the Linux Agent.
Friday, September 20, 2019 - 15:30

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Added

New internal attribute to identify the Infrastructure Agent that submits data from On-Host Integrations.

Thursday, September 19, 2019 - 10:00

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Added

Added new NFSSample (event type is NFSSample) for gathering NFS client metrics. This is configurable by the following config option:

  • metrics_nfs_sample_rate (default: 20)

  • detailed_nfs (default: false)

Thursday, September 5, 2019 - 15:40

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Changed

Add extra information on verbose logs. On each metrics post, an incremental counter and the timestamps of the submitted metrics are logged.

Windows specific

Using a new endpoint for Agent identity retrieval to mitigate the hostname flipping issue.

Monday, August 26, 2019 - 12:00

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Changed

  • Improve trial management mechanism in Agent
  • Add support for including extra attributes in the Events; before, events only supported a summary and category field, now extra attributes can be defined.
Tuesday, August 20, 2019 - 11:00

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Changed

  • Optimized Storage Sampler CPU consumption (noticeable in agents managing > 100 mounted devices).

Windows specific

  • All executables are now signed.
  • Added versioning info to newrelic-infra-ctl.exe.
  • These changes should avoid Defender to flag the package as threat.
Tuesday, August 13, 2019 - 11:00

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Windows only

  • Previous agent version 1.5.0 got flagged by Windows Defender. We found it was a false positive. This version proved to pass Defender test, but could still get flagged by Defender on some systems.
  • Improved StorageSample metrics performance. Please refer to the New Relic event data dictionary for a detailed description of them.
Monday, August 12, 2019 - 11:00

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Changed

Windows only

IMPORTANT: This version was deleted from the Windows repository to avoid causing issues on the platform.

  • Improved hostname flipping issue mitigation using a new endpoint for agent identity retrieval.
    • Cases where a host flipping its hostname (because DNS lookup is not available or any other reasons) caused host entity identification to change (and some alerts to fail) should be mitigated, but some cases could still persist.
Monday, August 5, 2019 - 11:00

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Added

  • New StorageSample metrics. Please refer to the New Relic event data dictionary for a detailed description of them.
    • Linux-only storage metrics: inodesFree, inodesUsed, inodesTotal and inodesUsedPercent.
    • Windows-only storage metrics: avgQueueLen, avgReadQueueLen, avgWriteQueueLen and currentQueueLen.

Security notes

  • Windows package gets flagged by Windows-Defender on some machines. Use newer versions instead.
Thursday, August 1, 2019 - 09:30

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Bugfixes

  • Fixed crash behaviour while stopping the agent under certain circumstances. Ie, containerised agent service stop could trigger a crash dumping a trace.
    • Crash on stop should not be harmful for the agent itself or remaining data, but a non zero exit code and/or crash backtrace output might affect 3rd parties.
Monday, July 29, 2019 - 09:30

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Bugfixes

  • Fix log obfuscation feature applying to integration received arguments.
    • Bug was introduced on agent v1.4.0 affecting some OHIs arguments.
    • Symptom was: OHI receives obfuscated PASSWORD env vars with value HIDDEN.
Thursday, July 18, 2019 - 09:30

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Added

  • Optional JSON log format (doc coming soon).

Changed

  • Startup info and errors are now logged into the log file since the beginning.
  • Log messages prior to configuration being fully loaded.
  • Improved error catching and logging on fatal failures.
  • Improved log messages. Most of the messages are now static, not inlined with context values, so messages are more easily filterable/greppable, and context fields are provided attached.

Example old message:

  Containerized agent found with container id VALUE

Example new message:

  Containerized agent found in container
      containerID: VALUE
Monday, July 15, 2019 - 09:30

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Changed

  • Allow enabling http-server (required for Statsd integration) to work in forwarder mode.
Thursday, July 11, 2019 - 09:30

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Added

Improved logging and troubleshooting features:

  • Logging agent config options at startup (with obfuscation of sensitive data).
  • Logging all the config options of the loaded integrations at startup (with obfuscation of sensitive data).
  • Improve log messages related to integrations.
  • Integrations health checks
  • New binary called newrelic-infra-ctl for sending notifications to the agent for:
    • Enabling verbose logs for 5 minutes
    • Integrations health check

Agent daemon notification

For notifying the agent to perform actions, the newrelic-infra-ctl command was created. It has the sole responsibility of sending a notification to the agent process that's running inside the host.

In Linux this communication happens via POSIX signals. newrelic-infra-ctl first tries to find if there is an agent process running. If it finds it, it checks if the process is running inside a Docker container. This is because signals to Docker containers are sent with the docker kill command. Once it knows the pid and the signaling method to use, it sends a SIGUSR1 signal to the agent. The agent just has to set a signal handler for when it receives a SIGUSR1.

In Windows, things are a little different. The only signals that we could send to the process were exit signals. In Windows processes communicate by sending messages to their respective windows, but you might be wondering (as I was), the agent is a daemon process so it doesn't have a window. The solution, easy, a hidden window. On startup the agent creates a hidden window, and sets a handler that listens for messages that arrive in that window. newrelic-infra-ctl finds that windows and sends messages to it.

Changed

  • Decorate samples with reportingAgent attribute and replace loopback address if found in reportingEndpoint and reportingEntityKey samples attributes.
  • Do not log config.pid_file property in the Windows agent.
Monday, July 1, 2019 - 14:30

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Changes

  • Minor internal architectural improvements. No impact expected.
Thursday, June 13, 2019 - 09:45

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Features

  • Add support for Windows 2019

Bugfixes

  • Fix temporary duplicated host entries after restarting cloud instances.
  • Fixed a bug that caused to not querying properly the cpu_name, cpu_num and total_cpu values in Windows systems with slow WMI queries.
  • Fixed issue causing the agent to not be able to run in privileged mode in some Linux versions. e.g. rhel7/8
Monday, May 27, 2019 - 09:45

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Features

  • Add support for Red Hat Enterprise Linux 8 and CentOS 8

Improvements

  • Improve log messages related to startup permissions errors.
Thursday, April 11, 2019 - 09:45

Notes

A new version of the agent has been released. Follow standard procedures to update your Infrastructure agent.

Bug fixes

  • When the configuration variable startup_connection_retries is set to -1, the Agent will keep checking forever the connectivity at startup to avoid CrashLoopBackOff states in K8S in case of failures. 'startup_connection_retry_time' has been removed and now the Agent uses an exponential backoff algorithm.
  • Improve the exponential backoff algorithm the Agent uses when posting metrics fails due to a non 2xx request response.
  • Filter duplicated device entries in the StorageSample.

Pages