Skip to content
This repository was archived by the owner on Oct 4, 2020. It is now read-only.

Commit 0a52a93

Browse files
committed
New relic
1 parent c7af2e4 commit 0a52a93

File tree

4 files changed

+237
-0
lines changed

4 files changed

+237
-0
lines changed

Gemfile

+1
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ gem "builder", "~> 3.2.2"
2121
gem "nokogiri", "~> 1.6.0"
2222
gem "rspec", "~> 2.14.1"
2323
gem "oauth2", "~> 0.9.2"
24+
gem "newrelic_rpm", "~> 3.7"
2425

2526
gem "log4r"
2627

Gemfile.lock

+2
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ GEM
3131
multi_json (1.8.2)
3232
multi_xml (0.5.5)
3333
multipart-post (1.2.0)
34+
newrelic_rpm (3.7.1.182)
3435
nokogiri (1.6.0)
3536
mini_portile (~> 0.5.0)
3637
oauth2 (0.9.2)
@@ -98,6 +99,7 @@ DEPENDENCIES
9899
compass
99100
haml
100101
log4r
102+
newrelic_rpm (~> 3.7)
101103
nokogiri (~> 1.6.0)
102104
oauth2 (~> 0.9.2)
103105
padrino-helpers

newrelic.yml

+227
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,227 @@
1+
#
2+
# This file configures the New Relic Agent. New Relic monitors
3+
# Ruby, Java, .NET, PHP, and Python applications with deep visibility and low overhead.
4+
# For more information, visit www.newrelic.com.
5+
#
6+
# Generated October 24, 2013
7+
#
8+
# This configuration file is custom generated for Greg Kempe - [email protected]
9+
10+
11+
# Here are the settings that are common to all environments
12+
common: &default_settings
13+
# ============================== LICENSE KEY ===============================
14+
15+
# You must specify the license key associated with your New Relic
16+
# account. This key binds your Agent's data to your account in the
17+
# New Relic service.
18+
license_key: 'replaced by env var'
19+
20+
# Agent Enabled (Ruby/Rails Only)
21+
# Use this setting to force the agent to run or not run.
22+
# Default is 'auto' which means the agent will install and run only
23+
# if a valid dispatcher such as Mongrel is running. This prevents
24+
# it from running with Rake or the console. Set to false to
25+
# completely turn the agent off regardless of the other settings.
26+
# Valid values are true, false and auto.
27+
#
28+
# agent_enabled: auto
29+
30+
# Application Name Set this to be the name of your application as
31+
# you'd like it show up in New Relic. The service will then auto-map
32+
# instances of your application into an "application" on your
33+
# dashboard page. If you want to map this instance into multiple
34+
# apps, like "AJAX Requests" and "All UI" then specify a semicolon
35+
# separated list of up to three distinct names, or a yaml list.
36+
# Defaults to the capitalized RAILS_ENV or RACK_ENV (i.e.,
37+
# Production, Staging, etc)
38+
#
39+
# Example:
40+
#
41+
# app_name:
42+
# - Ajax Service
43+
# - All Services
44+
#
45+
app_name: Steno
46+
47+
# When "true", the agent collects performance data about your
48+
# application and reports this data to the New Relic service at
49+
# newrelic.com. This global switch is normally overridden for each
50+
# environment below. (formerly called 'enabled')
51+
monitor_mode: true
52+
53+
# Developer mode should be off in every environment but
54+
# development as it has very high overhead in memory.
55+
developer_mode: false
56+
57+
# The newrelic agent generates its own log file to keep its logging
58+
# information separate from that of your application. Specify its
59+
# log level here.
60+
log_level: info
61+
62+
# Optionally set the path to the log file This is expanded from the
63+
# root directory (may be relative or absolute, e.g. 'log/' or
64+
# '/var/log/') The agent will attempt to create this directory if it
65+
# does not exist.
66+
# log_file_path: 'log'
67+
68+
# Optionally set the name of the log file, defaults to 'newrelic_agent.log'
69+
# log_file_name: 'newrelic_agent.log'
70+
71+
# The newrelic agent communicates with the service via https by default. This
72+
# prevents eavesdropping on the performance metrics transmitted by the agent.
73+
# The encryption required by SSL introduces a nominal amount of CPU overhead,
74+
# which is performed asynchronously in a background thread. If you'd prefer
75+
# to send your metrics over http uncomment the following line.
76+
# ssl: false
77+
78+
#============================== Browser Monitoring ===============================
79+
# New Relic Real User Monitoring gives you insight into the performance real users are
80+
# experiencing with your website. This is accomplished by measuring the time it takes for
81+
# your users' browsers to download and render your web pages by injecting a small amount
82+
# of JavaScript code into the header and footer of each page.
83+
browser_monitoring:
84+
# By default the agent automatically injects the monitoring JavaScript
85+
# into web pages. Set this attribute to false to turn off this behavior.
86+
auto_instrument: false
87+
88+
# Proxy settings for connecting to the New Relic server.
89+
#
90+
# If a proxy is used, the host setting is required. Other settings
91+
# are optional. Default port is 8080.
92+
#
93+
# proxy_host: hostname
94+
# proxy_port: 8080
95+
# proxy_user:
96+
# proxy_pass:
97+
98+
# The agent can optionally log all data it sends to New Relic servers to a
99+
# separate log file for human inspection and auditing purposes. To enable this
100+
# feature, change 'enabled' below to true.
101+
# See: https://newrelic.com/docs/ruby/audit-log
102+
audit_log:
103+
enabled: false
104+
105+
# Tells transaction tracer and error collector (when enabled)
106+
# whether or not to capture HTTP params. When true, frameworks can
107+
# exclude HTTP parameters from being captured.
108+
# Rails: the RoR filter_parameter_logging excludes parameters
109+
# Java: create a config setting called "ignored_params" and set it to
110+
# a comma separated list of HTTP parameter names.
111+
# ex: ignored_params: credit_card, ssn, password
112+
capture_params: false
113+
114+
# Transaction tracer captures deep information about slow
115+
# transactions and sends this to the New Relic service once a
116+
# minute. Included in the transaction is the exact call sequence of
117+
# the transactions including any SQL statements issued.
118+
transaction_tracer:
119+
120+
# Transaction tracer is enabled by default. Set this to false to
121+
# turn it off. This feature is only available at the Professional
122+
# and above product levels.
123+
enabled: true
124+
125+
# Threshold in seconds for when to collect a transaction
126+
# trace. When the response time of a controller action exceeds
127+
# this threshold, a transaction trace will be recorded and sent to
128+
# New Relic. Valid values are any float value, or (default) "apdex_f",
129+
# which will use the threshold for an dissatisfying Apdex
130+
# controller action - four times the Apdex T value.
131+
transaction_threshold: apdex_f
132+
133+
# When transaction tracer is on, SQL statements can optionally be
134+
# recorded. The recorder has three modes, "off" which sends no
135+
# SQL, "raw" which sends the SQL statement in its original form,
136+
# and "obfuscated", which strips out numeric and string literals.
137+
record_sql: obfuscated
138+
139+
# Threshold in seconds for when to collect stack trace for a SQL
140+
# call. In other words, when SQL statements exceed this threshold,
141+
# then capture and send to New Relic the current stack trace. This is
142+
# helpful for pinpointing where long SQL calls originate from.
143+
stack_trace_threshold: 0.500
144+
145+
# Determines whether the agent will capture query plans for slow
146+
# SQL queries. Only supported in mysql and postgres. Should be
147+
# set to false when using other adapters.
148+
# explain_enabled: true
149+
150+
# Threshold for query execution time below which query plans will
151+
# not be captured. Relevant only when `explain_enabled` is true.
152+
# explain_threshold: 0.5
153+
154+
# Error collector captures information about uncaught exceptions and
155+
# sends them to New Relic for viewing
156+
error_collector:
157+
158+
# Error collector is enabled by default. Set this to false to turn
159+
# it off. This feature is only available at the Professional and above
160+
# product levels.
161+
enabled: true
162+
163+
# Rails Only - tells error collector whether or not to capture a
164+
# source snippet around the place of the error when errors are View
165+
# related.
166+
capture_source: true
167+
168+
# To stop specific errors from reporting to New Relic, set this property
169+
# to comma-separated values. Default is to ignore routing errors,
170+
# which are how 404's get triggered.
171+
ignore_errors: "ActionController::RoutingError,Sinatra::NotFound"
172+
173+
# If you're interested in capturing memcache keys as though they
174+
# were SQL uncomment this flag. Note that this does increase
175+
# overhead slightly on every memcached call, and can have security
176+
# implications if your memcached keys are sensitive
177+
# capture_memcache_keys: true
178+
179+
# Application Environments
180+
# ------------------------------------------
181+
# Environment-specific settings are in this section.
182+
# For Rails applications, RAILS_ENV is used to determine the environment.
183+
# For Java applications, pass -Dnewrelic.environment <environment> to set
184+
# the environment.
185+
186+
# NOTE if your application has other named environments, you should
187+
# provide newrelic configuration settings for these environments here.
188+
189+
development:
190+
<<: *default_settings
191+
# Turn off communication to New Relic service in development mode (also
192+
# 'enabled').
193+
# NOTE: for initial evaluation purposes, you may want to temporarily
194+
# turn the agent on in development mode.
195+
monitor_mode: false
196+
197+
# Rails Only - when running in Developer Mode, the New Relic Agent will
198+
# present performance information on the last 100 transactions you have
199+
# executed since starting the mongrel.
200+
# NOTE: There is substantial overhead when running in developer mode.
201+
# Do not use for production or load testing.
202+
developer_mode: true
203+
204+
# Enable textmate links
205+
# textmate: true
206+
207+
test:
208+
<<: *default_settings
209+
# It almost never makes sense to turn on the agent when running
210+
# unit, functional or integration tests or the like.
211+
monitor_mode: false
212+
213+
# Turn on the agent in production for 24x7 monitoring. NewRelic
214+
# testing shows an average performance impact of < 5 ms per
215+
# transaction, you can leave this on all the time without
216+
# incurring any user-visible performance degradation.
217+
production:
218+
<<: *default_settings
219+
monitor_mode: true
220+
221+
# Many applications have a staging environment which behaves
222+
# identically to production. Support for that environment is provided
223+
# here. By default, the staging environment has the agent turned on.
224+
staging:
225+
<<: *default_settings
226+
monitor_mode: true
227+
# app_name: My Application (Staging)

steno_app.rb

+7
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
require 'sinatra'
2+
require 'newrelic_rpm'
3+
24
require 'padrino-helpers'
35
require 'log4r'
46
require 'compass'
@@ -116,4 +118,9 @@ class StenoApp < Sinatra::Base
116118

117119
haml :github_callback, layout: false
118120
end
121+
122+
get '/ping' do
123+
'a-ok'
124+
end
125+
newrelic_ignore '/ping'
119126
end

0 commit comments

Comments
 (0)