turbot/newrelic
steampipe plugin install newrelic

Table: newrelic_apm_application - Query New Relic APM Applications using SQL

New Relic APM is a software application that helps monitor and manage the performance of your applications. It provides detailed performance metrics for every aspect of your environment. With New Relic APM, you can understand how your applications are performing in real-time, troubleshoot issues, and improve application performance over time.

Table Usage Guide

The newrelic_apm_application table provides insights into application performance within New Relic APM. As a DevOps engineer, explore application-specific details through this table, including response times, throughput, error rates, and Apdex score. Utilize it to uncover information about applications, such as those with high error rates, poor response times, and to verify Apdex scores.

Examples

List all applications monitored by apm

Explore the performance and health status of all applications under monitoring. This query helps in gaining insights into application response times, error rates, and apdex scores, allowing you to assess their overall performance and troubleshoot any potential issues.

select
id,
name,
language,
health_status,
reporting,
last_reported_at,
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,
real_user_monitoring,
server_side_config,
servers,
hosts,
instances,
alert_policy_id
from
newrelic_apm_application;
select
id,
name,
language,
health_status,
reporting,
last_reported_at,
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,
real_user_monitoring,
server_side_config,
servers,
hosts,
instances,
alert_policy_id
from
newrelic_apm_application;

List basic information for all applications written in a specific programming language

Explore applications written in a specific programming language to gain insights into their health status and the count of hosts and instances. This helps in assessing the performance and health of applications and can guide in resource allocation.

select
id,
name,
language,
health_status,
host_count,
instance_count,
from
newrelic_apm_application
where
language = 'java';
select
id,
name,
language,
health_status,
host_count,
instance_count
from
newrelic_apm_application
where
language = 'java';

List applications using a specific named policy

Explore which applications are utilizing a specific policy to gain insights into the policy's impact and effectiveness. This query is particularly useful for managing and optimizing policy usage across different applications.

select
id,
name,
language,
health_status,
host_count,
instance_count,
from
newrelic_apm_application
where
alert_policy_id = (
select
id
from
newrelic_alert_policy
where
name = 'test'
);
select
id,
name,
language,
health_status,
host_count,
instance_count
from
newrelic_apm_application
where
alert_policy_id = (
select
id
from
newrelic_alert_policy
where
name = 'test'
);

Schema for newrelic_apm_application

NameTypeOperatorsDescription
_ctxjsonbSteampipe context in JSON form, e.g. connection_name.
alert_policy_idbigintThe identifier for the alert policy associated with the application.
apdex_scoredouble precisionCurrent apdex score of the application (at last metric).
apdex_targetdouble precisionThe apdex target of the application.
apdex_thresholddouble precisionThe setting for apdex threshold against the application.
concurrent_instance_countbigintCount of active concurrent instances (at last metric).
end_user_apdex_scoredouble precisionCurrent apdex score from end-user perspective of the application (at last metric).
end_user_apdex_targetdouble precisionThe apdex target from end-user perspective of the application (at last metric).
end_user_apdex_thresholddouble precisionThe setting for apdex threshold from the end user perspective.
end_user_response_timedouble precisionCurrent response time from end-user perspective of the application (at last metric).
end_user_throughputdouble precisionCurrent throughput from end-user perspective of the application (at last metric).
error_ratedouble precisionCurrent error rate of the application (at last metric).
health_statustextCurrent reported health status of the application.
host_countbigintCount of hosts the application is installed on.
hostsjsonbAn array of identifiers for the hosts associated with the applications.
idbigint=Unique identifier of the application.
instance_countbigintCount of instances of the application installed.
instancesjsonbAn array of identifiers for the instances of the application.
languagetext=Language of the application.
last_reported_attimestamp with time zoneLast report received.
nametext=Friendly/display name of the application.
real_user_monitoringbooleanIndicates if real user monitoring is enabled for the application.
reportingbooleanIndicates if reporting is enabled for the application.
response_timedouble precisionCurrent response time of the application (at last metric).
server_side_configbooleanIndicates if server side config is used for the application.
serversjsonbAn array of identifiers for the servers associated with the application.
throughputdouble precisionCurrent throughput of the application (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