newrelic-observability

star 629

New Relic APM and monitoring. Use when running NRQL queries, checking application performance, error rates, or throughput via New Relic.

incidentfox By incidentfox schedule Updated 2/17/2026

name: newrelic-observability description: New Relic APM and monitoring. Use when running NRQL queries, checking application performance, error rates, or throughput via New Relic. allowed-tools: Bash(python *)

New Relic Observability

Authentication

IMPORTANT: Credentials are injected automatically by a proxy layer. Do NOT check for NEWRELIC_API_KEY in environment variables - it won't be visible to you. Just run the scripts directly; authentication is handled transparently.

Configuration environment variables you CAN check (non-secret):

  • NEWRELIC_ACCOUNT_ID - New Relic account ID
  • NEWRELIC_BASE_URL - API base URL (proxy mode)

Available Scripts

All scripts are in .claude/skills/observability-newrelic/scripts/

query_nrql.py - Run NRQL Queries (START HERE)

python .claude/skills/observability-newrelic/scripts/query_nrql.py --account-id ACCOUNT_ID --query "SELECT average(duration) FROM Transaction SINCE 1 hour ago"

get_apm_summary.py - APM Summary

python .claude/skills/observability-newrelic/scripts/get_apm_summary.py --account-id ACCOUNT_ID --app-name MyApp [--time-range 30m]

NRQL Query Reference

-- Response time
SELECT average(duration) FROM Transaction WHERE appName = 'MyApp' SINCE 1 hour ago

-- Throughput
SELECT count(*) FROM Transaction WHERE appName = 'MyApp' SINCE 1 hour ago TIMESERIES 5 minutes

-- Error rate
SELECT percentage(count(*), WHERE error = true) FROM Transaction WHERE appName = 'MyApp' SINCE 1 hour ago

-- Apdex score
SELECT apdex(duration, t: 0.5) FROM Transaction WHERE appName = 'MyApp' SINCE 1 hour ago

-- Slowest transactions
SELECT average(duration), count(*) FROM Transaction WHERE appName = 'MyApp' SINCE 1 hour ago FACET name LIMIT 10

-- Database query time
SELECT average(databaseDuration) FROM Transaction WHERE appName = 'MyApp' SINCE 1 hour ago TIMESERIES

-- External service calls
SELECT average(externalDuration), count(*) FROM Transaction WHERE appName = 'MyApp' SINCE 1 hour ago FACET externalTransactionName

Investigation Workflow

Application Performance Issue

1. get_apm_summary.py --account-id <id> --app-name <app> (overview)
2. query_nrql.py --query "SELECT average(duration) FROM Transaction WHERE appName = '<app>' SINCE 1 hour ago TIMESERIES 5 minutes"
3. query_nrql.py --query "SELECT percentage(count(*), WHERE error = true) FROM Transaction WHERE appName = '<app>' SINCE 1 hour ago TIMESERIES 5 minutes"
Install via CLI
npx skills add https://github.com/incidentfox/incidentfox --skill newrelic-observability
Repository Details
star Stars 629
call_split Forks 73
navigation Branch main
article Path SKILL.md
More from Creator