Changes
- The
Runner
class no longer invokes a System.exit call after its polling thread completes
Improvements
- New
Config
class for accessing configuration properties for a plugin - New optional
plugin.json
file for configuringagents
and any static configuration a plugin may need - New
Logger
class for standard logging - Compatibility with the New Relic Platform Installer
Changes
- Changes for new
plugin installer
CLI tool - Consistent property file structure with
json
files - Moved from
newrelic.properties
configuration file tonewrelic.json
filehost
property changed toendpoint
sslHostVerification
changed tossl_host_verification
AgentFactory#readJSONFile(String)
is now deprecated in favor of usingConfig#getValue(String)
and theplugin.json
fileAgentFactory
constructor is no longer configurable with a JSON configuration file - see newplugin.json
file in READMEContext#getLogger()
,Context#setLogger()
, andContext#log()
have been removed in favor of the newLogger
class- The
logging.properties
configuration file has been replaced with simplified configuration in thenewrelic.json
file. See README.md for logging configuration. Runner
constructor now correctly advertises that it throws a checkedConfigurationException
Agent#prepareToRun(Context)
has been removed in favor ofAgent#prepareToRun()
- The
EpochCounter
class has been renamed toEpochProcessor
Agent#getComponentHumanLabel()
has been deprecated forAgent#getAgentName()
Runner#register(Agent)
method has been deprecated forRunner#add(Agent)
Bug Fixes
- Fixed a metric value issue where Infinity and NaN values were being improperly handled
Improvements
- Added the ability to specify where your configuration directory exists.
- Several performance improvements:
- Improved logging performance
- Improved String memory allocation
Bug Fixes
- Fixed logic around EpochCounters processing null values.
Improvements
- Added ability to consolidate sending multiple component agent metrics in a single REST request per poll cycle.
Bug Fixes
- Increased accuracy for timestamps in calculating component durations.
Improvements
- Added SDK lifecycle logging enhancements.
Features
- Added 20 minute aggregation limit for when an agent cannot connect to New Relic's Metric API.
Features
- Added support for metric aggregation when the agent cannot connect to New Relic's Metric API.
Features
- Added support for automatic handling of component durations between successful metric publishes.
Bug Fixes
- Fixed
EpochCounter#process
issue where sub-second intervals (e.g. 400 ms) would return non-null values.
Bug Fixes
- Fixed an issue where component data was being benignly duplicated in the request's JSON.
Features
- Improved logging for readability
- Added configuration option for SSL hostname verification
Changes
- No breaking changes
Features
- Initial release version of the New Relic Java SDK
- Ability to create Agents for reporting metrics by subclassing
Agent
- Ability to configure Agents via an
AgentFactory
with a JSON configuration file - Ability to process metrics by time interval with an
EpochCounter
- Ability to create Agents for reporting metrics by subclassing
Changes
EpochCounter
processor will now returnnull
instead of 0 for invalid data pointsAgent#reportMetric(String, String, int)
andAgent#reportMetric(String, String, float)
have been consolidated toAgent#reportMetric(String, String, Number)