turbot/newrelic
steampipe plugin install newrelic

Table: newrelic_apm_application_instance - Query New Relic APM Application Instances using SQL

New Relic's Application Performance Monitoring (APM) is a software that provides real-time monitoring and detailed performance analytics of software applications. It helps in identifying performance issues, understanding dependencies, and improving software performance. An Application Instance in New Relic APM represents a single running instance of your application, providing in-depth performance metrics for that instance.

Table Usage Guide

The newrelic_apm_application_instance table provides insights into individual instances of applications monitored by New Relic APM. As a DevOps engineer or application developer, you can use this table to explore detailed metrics about each application instance, including throughput, response time, and error rate. Utilize it to identify performance bottlenecks, understand dependencies, and improve the overall performance of your applications.

Important Notes

  • You must specify the app_id in the where clause to query this table.

Examples

List all application instances monitored by apm for a specific application

Determine the performance and health status of a specific application by analyzing its response time, error rate, and other key metrics. This can aid in identifying any potential issues or bottlenecks that may be affecting the application's overall performance.

select
id,
application_name,
host,
port,
language,
health_status,
response_time,
throughput,
error_rate,
apdex_target,
apdex_score,
host_count,
instance_count,
concurrent_instance_count,
end_user_response_time,
end_user_throughput,
end_user_apdex_target,
end_user_apdex_score,
end_user_apdex_threshold,
app_id,
app_host
from
newrelic_apm_application_instance
where
app_id = 45;
select
id,
application_name,
host,
port,
language,
health_status,
response_time,
throughput,
error_rate,
apdex_target,
apdex_score,
host_count,
instance_count,
concurrent_instance_count,
end_user_response_time,
end_user_throughput,
end_user_apdex_target,
end_user_apdex_score,
end_user_apdex_threshold,
app_id,
app_host
from
newrelic_apm_application_instance
where
app_id = 45;

Obtain information on instances of all applications

Explore which applications have the most instances to understand resource allocation and usage patterns. This can help in optimizing resource distribution and identifying potential bottlenecks.

select
i.application_name,
sum(i.instance_count) as instances
from
newrelic_apm_application_instance i,
newrelic_apm_application a
where
i.app_id = a.id
group by
i.application_name;
select
i.application_name,
sum(i.instance_count) as instances
from
newrelic_apm_application_instance i
join newrelic_apm_application a on i.app_id = a.id
group by
i.application_name;

Schema for newrelic_apm_application_instance

NameTypeOperatorsDescription
_ctxjsonbSteampipe context in JSON form, e.g. connection_name.
apdex_scoredouble precisionCurrent apdex score of the application instance (at last metric).
apdex_targetdouble precisionThe apdex target of the application instance.
app_hostbigintUnique identifier for the host on which this application instance is running
app_idbigint=Unique identifier for the application
application_nametextThe name of the application for which this is an instance of.
concurrent_instance_countbigintCount of active concurrent instances (at last metric).
end_user_apdex_scoredouble precisionCurrent apdex score from end-user perspective of the application instance (at last metric)
end_user_apdex_targetdouble precisionThe apdex target from end-user perspective of the application instance (at last metric)
end_user_response_timedouble precisionCurrent response time from end-user perspective of the application instance (at last metric).
end_user_throughputdouble precisionCurrent throughput from end-user perspective of the application instance (at last metric)
error_ratedouble precisionCurrent error rate of the application instance (at last metric).
health_statustextCurrent reported health status of the application instance.
hosttextName/Identifier for the host on which the application instance is running.
host_countbigintCount of hosts the application instance is installed on.
idbigint=Unique identifier of the application instance.
instance_countbigintCount of instances of the application instance installed.
languagetextLanguage of the application instance.
portbigintThe port on which the application instance is configured.
response_timedouble precisionCurrent response time of the application instance (at last metric).
throughputdouble precisionCurrent throughput of the application instance (at last metric).

Export

This table is available as a standalone Exporter CLI. Steampipe exporters are stand-alone binaries that allow you to extract data using Steampipe plugins without a database.

You can download the tarball for your platform from the Releases page, but it is simplest to install them with the steampipe_export_installer.sh script:

/bin/sh -c "$(curl -fsSL https://steampipe.io/install/export.sh)" -- newrelic

You can pass the configuration to the command with the --config argument:

steampipe_export_newrelic --config '<your_config>' newrelic_apm_application_instance