diff --git a/lib/new_relic/agent/configuration/default_source.rb b/lib/new_relic/agent/configuration/default_source.rb
index 98c486a098..75f7bbe8b3 100644
--- a/lib/new_relic/agent/configuration/default_source.rb
+++ b/lib/new_relic/agent/configuration/default_source.rb
@@ -390,9 +390,11 @@ def self.enforce_fallback(allowed_values: nil, fallback: nil)
:description => <<~DESCRIPTION
If `false`, LLM instrumentation (OpenAI only for now) will not capture input and output content on specific LLM events.
- The excluded attributes include:
- * `content` from LlmChatCompletionMessage events
- * `input` from LlmEmbedding events
+ The excluded attributes include:
+ * `content` from LlmChatCompletionMessage events
+ * `input` from LlmEmbedding events
+
+ This is an optional security setting to prevent recording sensitive data sent to and received from your LLMs.
DESCRIPTION
},
# this is only set via server side config
@@ -477,12 +479,9 @@ def self.enforce_fallback(allowed_values: nil, fallback: nil)
:public => true,
:type => Boolean,
:allowed_from_server => false,
- :description => 'Forces the exit handler that sends all cached data to collector ' \
- 'before shutting down to be installed regardless of detecting scenarios where it generally should not be. ' \
- 'Known use-case for this option is where Sinatra is running as an embedded service within another framework ' \
- 'and the agent is detecting the Sinatra app and skipping the `at_exit` handler as a result. Sinatra classically ' \
- 'runs the entire application in an `at_exit` block and would otherwise misbehave if the agent\'s `at_exit` handler ' \
- 'was also installed in those circumstances. Note: `send_data_on_exit` should also be set to `true` in tandem with this setting.'
+ :description => <<~DESC
+ Forces the exit handler that sends all cached data to collector before shutting down to be installed regardless of detecting scenarios where it generally should not be. Known use-case for this option is where Sinatra is running as an embedded service within another framework and the agent is detecting the Sinatra app and skipping the `at_exit` handler as a result. Sinatra classically runs the entire application in an `at_exit` block and would otherwise misbehave if the Agent's `at_exit` handler was also installed in those circumstances. Note: `send_data_on_exit` should also be set to `true` in tandem with this setting."
+ DESC
},
:high_security => {
:default => false,
@@ -1457,7 +1456,7 @@ def self.enforce_fallback(allowed_values: nil, fallback: nil)
:type => String,
:dynamic_name => true,
:allowed_from_server => false,
- :description => 'Controls auto-instrumentation of the aws-sdk-dynamodb library at start-up. May be one of [auto|prepend|chain|disabled].'
+ :description => 'Controls auto-instrumentation of the aws-sdk-dynamodb library at start-up. May be one of `auto`, `prepend`, `chain`, `disabled`.'
},
:'instrumentation.fiber' => {
:default => 'auto',
@@ -1507,7 +1506,7 @@ def self.enforce_fallback(allowed_values: nil, fallback: nil)
:type => String,
:dynamic_name => true,
:allowed_from_server => false,
- :description => 'Controls auto-instrumentation of ethon at start up. May be one of [auto|prepend|chain|disabled]'
+ :description => 'Controls auto-instrumentation of ethon at start up. May be one of `auto`, `prepend`, `chain`, `disabled`'
},
:'instrumentation.excon' => {
:default => 'enabled',
@@ -1577,7 +1576,7 @@ def self.enforce_fallback(allowed_values: nil, fallback: nil)
:type => String,
:dynamic_name => true,
:allowed_from_server => false,
- :description => 'Controls auto-instrumentation of httpx at start up. May be one of [auto|prepend|chain|disabled]'
+ :description => 'Controls auto-instrumentation of httpx at start up. May be one of `auto`, `prepend`, `chain`, `disabled`'
},
:'instrumentation.logger' => {
:default => instrumentation_value_from_boolean(:'application_logging.enabled'),
@@ -1639,7 +1638,7 @@ def self.enforce_fallback(allowed_values: nil, fallback: nil)
:type => String,
:dynamic_name => true,
:allowed_from_server => false,
- :description => 'Controls auto-instrumentation of the ruby-openai gem at start-up. May be one of: `auto`, `prepend`, `chain`, `disabled`.'
+ :description => 'Controls auto-instrumentation of the ruby-openai gem at start-up. May be one of: `auto`, `prepend`, `chain`, `disabled`. Defaults to `disabled` in high security mode.'
},
:'instrumentation.puma_rack' => {
:default => value_of(:'instrumentation.rack'),
@@ -1982,7 +1981,11 @@ def self.enforce_fallback(allowed_values: nil, fallback: nil)
:public => true,
:type => Integer,
:allowed_from_server => true,
- :description => 'Defines the maximum number of span events reported from a single harvest. Any Integer between `1` and `10000` is valid.'
+ :description => <<~DESC
+ * Defines the maximum number of span events reported from a single harvest. Any Integer between `1` and `10000` is valid.'
+ * When configuring the agent for [AI monitoring](/docs/ai-monitoring/intro-to-ai-monitoring), set to max value `10000`.\
+ This ensures that the agent captures the maximum amount of distributed traces.
+ DESC
},
# Strip exception messages
:'strip_exception_messages.enabled' => {
diff --git a/lib/tasks/config.rake b/lib/tasks/config.rake
index 779009b88c..9ba66bbcb2 100644
--- a/lib/tasks/config.rake
+++ b/lib/tasks/config.rake
@@ -20,7 +20,7 @@ namespace :newrelic do
ATTRIBUTES => '[Attributes](/docs/features/agent-attributes) are key-value pairs containing information that determines the properties of an event or transaction. These key-value pairs can be viewed within transaction traces in APM, traced errors in APM, transaction events in dashboards, and page views in dashboards. You can customize exactly which attributes will be sent to each of these destinations',
'transaction_tracer' => 'The [transaction traces](/docs/apm/traces/transaction-traces/transaction-traces) feature collects detailed information from a selection of transactions, including a summary of the calling sequence, a breakdown of time spent, and a list of SQL queries and their query plans (on mysql and postgresql). Available features depend on your New Relic subscription level.',
'error_collector' => "The agent collects and reports all uncaught exceptions by default. These configuration options allow you to customize the error collection.\n\nFor information on ignored and expected errors, [see this page on Error Analytics in APM](/docs/agents/manage-apm-agents/agent-data/manage-errors-apm-collect-ignore-or-mark-expected/). To set expected errors via the `NewRelic::Agent.notice_error` Ruby method, [consult the Ruby agent API](/docs/agents/ruby-agent/api-guides/sending-handled-errors-new-relic/).",
- 'browser_monitoring' => "The browser monitoring [page load timing](/docs/browser/new-relic-browser/page-load-timing/page-load-timing-process) feature (sometimes referred to as real user monitoring or RUM) gives you insight into the performance real users are experiencing with your website. This is accomplished by measuring the time it takes for your users' browsers to download and render your web pages by injecting a small amount of JavaScript code into the header and footer of each page.",
+ 'browser_monitoring' => "The [page load timing](/docs/browser/new-relic-browser/page-load-timing/page-load-timing-process) feature (sometimes referred to as real user monitoring or RUM) gives you insight into the performance real users are experiencing with your website. This is accomplished by measuring the time it takes for your users' browsers to download and render your web pages by injecting a small amount of JavaScript code into the header and footer of each page.",
'application_logging' => "The Ruby agent supports [APM logs in context](/docs/apm/new-relic-apm/getting-started/get-started-logs-context). For some tips on configuring logs for the Ruby agent, see [Configure Ruby logs in context](/docs/logs/logs-context/configure-logs-context-ruby).\n\nAvailable logging-related config options include:",
'analytics_events' => '[New Relic dashboards](/docs/query-your-data/explore-query-data/dashboards/introduction-new-relic-one-dashboards) is a resource to gather and visualize data about your software and what it says about your business. With it you can quickly and easily create real-time dashboards to get immediate answers about end-user experiences, clickstreams, mobile activities, and server transactions.',
'ai_monitoring' => "This section includes Ruby agent configurations for setting up AI monitoring.\n\nYou need to enable distributed tracing to capture trace and feedback data. It is turned on by default in Ruby agents 8.0.0 and higher."
@@ -28,7 +28,8 @@ namespace :newrelic do
NAME_OVERRIDES = {
'slow_sql' => 'Slow SQL [#slow-sql]',
- 'custom_insights_events' => 'Custom Events [#custom-events]'
+ 'custom_insights_events' => 'Custom Events [#custom-events]',
+ 'ai_monitoring' => 'AI Monitoring [#ai-monitoring]'
}
desc 'Describe available New Relic configuration settings'
diff --git a/lib/tasks/helpers/config.html.erb b/lib/tasks/helpers/config.html.erb
index cd3acf313d..64ede173b1 100644
--- a/lib/tasks/helpers/config.html.erb
+++ b/lib/tasks/helpers/config.html.erb
@@ -10,6 +10,7 @@ redirects:
- /docs/ruby/ruby-agent-configuration
- /docs/agents/ruby-agent/installation-and-configuration/ruby-agent-configuration
- /docs/agents/ruby-agent/installation-configuration/ruby-agent-configuration
+freshnessValidatedDate: never
---
@@ -70,12 +71,12 @@ The Ruby agent looks for the following environment variables, in this order, to
If the Ruby agent doesn't detect values for any of those environment variables, it will default the application environment to `development` and read from the `development` section of the `newrelic.yml` config file.
-When running the Ruby agent in a Rails app, the agent first looks for the `NEW_RELIC_ENV` environment variable to determine the application environment and which section of the `newrelic.yml` to use. If `NEW_RELIC_ENV` is not present, the agent uses the Rails environment (`RAILS_ENV`).
+When running the Ruby agent in a Rails app, the agent first looks for the `NEW_RELIC_ENV` environment variable to find the application environment and which section of the `newrelic.yml` to use. If `NEW_RELIC_ENV` is not present, the agent uses the Rails environment (`RAILS_ENV`).
When you edit the config file, be sure to:
* Indent only with two spaces.
-* Indent only where relevant, in stanzas such as **`error_collector`**.
+* Indent only where relevant, in sections such as **`error_collector`**.
If you do not indent correctly, the agent may throw an `Unable to parse configuration file` error on startup.
diff --git a/lib/tasks/helpers/format.rb b/lib/tasks/helpers/format.rb
index ea0f5e0557..2c4a3119df 100644
--- a/lib/tasks/helpers/format.rb
+++ b/lib/tasks/helpers/format.rb
@@ -69,7 +69,7 @@ def format_default_value(spec)
def format_description(value)
description = ''
- description += '**DEPRECATED** ' if value[:deprecated]
+ description += '**DEPRECATED**' if value[:deprecated]
description += value[:description]
description
end