For an even better experience than plugins, go to:
newrelic.com/integrations: Integrate the on-host and cloud systems you already use with New Relic, so you can filter and analyze data, create dashboards, and set alerts within a single platform.
developer.newrelic.com: Use developer tools to collect data from any source, automate workflows, build apps, and use our APIs.
Limited access to legacy plugins
As of December 2, 2020, plugin access has been limited to accounts that have accessed a legacy plugin in the past 30 days. The legacy plugin experience will reach end of life (EoL) as of June 16, 2021. For more information, see our Explorers Hub post.
Plugin SDKs
To get started with writing a plugin agent that generates example metric data, refer to the README files in GitHub for the Plugin agent SDK, including:
After developing a plugin with a plugin SDK, you can use Chef and Puppet installation scripts. This makes plugin installation easier from Plugin Central in New Relic, especially when your plugin has required runtime dependencies, such as Java or Ruby. Managing plugins with user permissions and startup scripts also is easier.
Several Chef and Puppet installation scripts have been written for supported plugins. You can use these Chef recipes and Puppet manifests as templates for other plugins. For more information about installation scripts for plugins in Plugin Central, see:
This is an example of how to configure your plugin to create multiple agents with different configurations. In this example:
The plugin is called Wikipedia.
Wikipedia has 3 hosts: English, Spanish, and German.
Each host uses a different port in New Relic Plugins.
Edit your YAML configuration file to include a list of entries for the component (instance) as a collection of block sequences. For example:
agents:
wikipedia
-
hostname: en.wikipedia.org
port: 80
-
hostname: sp.wikipedia.org
port: 81
-
hostname: de.wikipedia.org
port: 82
Edit your plugin code to identify specific options; for example, names, hostnames, ports, etc.:
agent_human_labels("Wikipedia") { "Wikipedia on #{hostname} on port # {port}" }
agent_config_options :hostname, :port
Within your plugin's setup_metrics method, the symbols referenced in the agent_config_options are available as local variables. You can view the summary metrics in the user interface, create one or more dashboards, and continue editing your plugin.
Use a programming language not supported by the plugin SDKs.
Write plugins to in-house standards or as part of a larger running application.
Report metrics for a large number of individual accounts.
The Plugin API can be used by plugin developers to POST metrics for multiple components (instances) directly to the New Relic collectors using JSON. Each POST typically is consumed by the collector in under 3ms, so this is a very fast way to send large amounts of metric data.
In order to provide your customers with New Relic metrics via your plugin, you must have access to the New Relic license key for each individual account. You can capture this information when provisioning new customers via the New Relic Partner API, or you can provide a mechanism whereby customers can share their existing New Relic license key with you.
Once you have access to the New Relic license key, your plugin can use the Plugin API to POST metrics for multiple components (instances) using JSON. You should POST metrics for each of your accounts to New Relic no more frequently than every 60 seconds and no less than every 300 seconds.
Multiple components (instances) can include multiple metrics within a single POST, corresponding to a particular New Relic account. You can provide metrics for your SaaS users that cover many database components, web server components, cache components, message queue components, etc.
Here is an example of the steps to follow in order to report plugin metrics for a collection of accounts:
Here is a large JSON data example showing what could be sent to New Relic Plugins via HTTP POST for a single licensee. This example contains multiple metrics for multiple components or instances for a single plugin. This example represents a sample size of 60 seconds.
Once your plugin has reported some data, you can edit it to include:
Your publisher (organization) name
Link to your website landing page
Link to your support page
URL to a branding image
Detailed description of the plugin
When publishing your plugin, the Type of download field offers options for a file download or website URL. SaaS providers can enter their website landing page URL.
View plugin usage
After you publish your plugin, New Relic will update usage data about accounts and components or instances every 24 hours, including:
Number of accounts using your plugin
Components or instances that are reporting data
Review comments
Ratings
Plugins that are publicly published in Plugin Central will have more details in the Usage dashboard than unlisted (privately published) ones. In addition to providing a central location to examine review comments and ratings, the Usage dashboard is useful for verifying public information about the plugin, including the download link and a shortcut link to Plugin Central.
Anyone on the authoring account can view the published plugin's Usage dashboard.
Go to one.newrelic.com > More > Plugins, and select the plugin's name or icon.
From the plugin's Summary page, select Usage.
For more help
If you need more help, check out these support and learning resources:
Browse the Explorers Hub to get help from the community and join in discussions.