newrelic_rpm 8.2.0 → 9.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +5 -2
- data/.rubocop.yml +1919 -0
- data/.rubocop_todo.yml +100 -0
- data/.simplecov +15 -0
- data/.snyk +11 -0
- data/.yardopts +1 -0
- data/Brewfile +12 -0
- data/CHANGELOG.md +3654 -2951
- data/CONTRIBUTING.md +21 -6
- data/DOCKER.md +167 -0
- data/Dockerfile +10 -0
- data/Gemfile +0 -1
- data/Guardfile +9 -8
- data/LICENSE +0 -6
- data/README.md +20 -20
- data/Rakefile +27 -29
- data/THIRD_PARTY_NOTICES.md +14 -199
- data/Thorfile +5 -0
- data/bin/newrelic +3 -2
- data/bin/newrelic_cmd +1 -0
- data/bin/nrdebug +76 -53
- data/config.dot +5 -5
- data/docker-compose.yml +107 -0
- data/init.rb +4 -6
- data/install.rb +2 -2
- data/lefthook.yml +9 -0
- data/lib/new_relic/agent/adaptive_sampler.rb +11 -7
- data/lib/new_relic/agent/agent.rb +94 -924
- data/lib/new_relic/agent/agent_helpers/connect.rb +227 -0
- data/lib/new_relic/agent/agent_helpers/harvest.rb +153 -0
- data/lib/new_relic/agent/agent_helpers/shutdown.rb +72 -0
- data/lib/new_relic/agent/agent_helpers/special_startup.rb +74 -0
- data/lib/new_relic/agent/agent_helpers/start_worker_thread.rb +167 -0
- data/lib/new_relic/agent/agent_helpers/startup.rb +202 -0
- data/lib/new_relic/agent/agent_helpers/transmit.rb +76 -0
- data/lib/new_relic/agent/agent_logger.rb +23 -19
- data/lib/new_relic/agent/attribute_filter.rb +64 -47
- data/lib/new_relic/agent/attribute_processing.rb +7 -7
- data/lib/new_relic/agent/attributes.rb +5 -4
- data/lib/new_relic/agent/audit_logger.rb +8 -3
- data/lib/new_relic/agent/autostart.rb +20 -18
- data/lib/new_relic/agent/chained_call.rb +1 -1
- data/lib/new_relic/agent/commands/agent_command.rb +3 -3
- data/lib/new_relic/agent/commands/agent_command_router.rb +12 -11
- data/lib/new_relic/agent/commands/thread_profiler_session.rb +5 -7
- data/lib/new_relic/agent/configuration/default_source.rb +1353 -1355
- data/lib/new_relic/agent/configuration/dotted_hash.rb +6 -5
- data/lib/new_relic/agent/configuration/environment_source.rb +11 -9
- data/lib/new_relic/agent/configuration/event_harvest_config.rb +13 -6
- data/lib/new_relic/agent/configuration/high_security_source.rb +8 -9
- data/lib/new_relic/agent/configuration/manager.rb +82 -68
- data/lib/new_relic/agent/configuration/manual_source.rb +1 -1
- data/lib/new_relic/agent/configuration/mask_defaults.rb +3 -3
- data/lib/new_relic/agent/configuration/security_policy_source.rb +82 -85
- data/lib/new_relic/agent/configuration/server_source.rb +19 -18
- data/lib/new_relic/agent/configuration/yaml_source.rb +16 -13
- data/lib/new_relic/agent/configuration.rb +1 -1
- data/lib/new_relic/agent/connect/request_builder.rb +17 -19
- data/lib/new_relic/agent/connect/response_handler.rb +5 -8
- data/lib/new_relic/agent/custom_event_aggregator.rb +14 -15
- data/lib/new_relic/agent/database/explain_plan_helpers.rb +4 -5
- data/lib/new_relic/agent/database/obfuscation_helpers.rb +14 -13
- data/lib/new_relic/agent/database/obfuscator.rb +2 -2
- data/lib/new_relic/agent/database/postgres_explain_obfuscator.rb +3 -3
- data/lib/new_relic/agent/database.rb +37 -48
- data/lib/new_relic/agent/database_adapter.rb +3 -1
- data/lib/new_relic/agent/datastores/metric_helper.rb +17 -18
- data/lib/new_relic/agent/datastores/mongo/event_formatter.rb +7 -6
- data/lib/new_relic/agent/datastores/mongo/metric_translator.rb +6 -10
- data/lib/new_relic/agent/datastores/mongo.rb +1 -1
- data/lib/new_relic/agent/datastores/nosql_obfuscator.rb +41 -0
- data/lib/new_relic/agent/datastores/redis.rb +5 -7
- data/lib/new_relic/agent/datastores.rb +7 -9
- data/lib/new_relic/agent/deprecator.rb +1 -1
- data/lib/new_relic/agent/distributed_tracing/cross_app_payload.rb +6 -6
- data/lib/new_relic/agent/distributed_tracing/cross_app_tracing.rb +31 -29
- data/lib/new_relic/agent/distributed_tracing/distributed_trace_attributes.rb +22 -21
- data/lib/new_relic/agent/distributed_tracing/distributed_trace_metrics.rb +19 -19
- data/lib/new_relic/agent/distributed_tracing/distributed_trace_payload.rb +49 -51
- data/lib/new_relic/agent/distributed_tracing/distributed_trace_transport_type.rb +5 -6
- data/lib/new_relic/agent/distributed_tracing/trace_context.rb +76 -77
- data/lib/new_relic/agent/distributed_tracing/trace_context_payload.rb +37 -36
- data/lib/new_relic/agent/distributed_tracing.rb +33 -35
- data/lib/new_relic/agent/encoding_normalizer.rb +4 -2
- data/lib/new_relic/agent/error_collector.rb +27 -23
- data/lib/new_relic/agent/error_event_aggregator.rb +4 -5
- data/lib/new_relic/agent/error_filter.rb +15 -16
- data/lib/new_relic/agent/error_trace_aggregator.rb +4 -3
- data/lib/new_relic/agent/event_aggregator.rb +22 -21
- data/lib/new_relic/agent/event_buffer.rb +7 -8
- data/lib/new_relic/agent/event_listener.rb +1 -2
- data/lib/new_relic/agent/event_loop.rb +22 -20
- data/lib/new_relic/agent/external.rb +11 -12
- data/lib/new_relic/agent/guid_generator.rb +13 -11
- data/lib/new_relic/agent/harvester.rb +4 -5
- data/lib/new_relic/agent/heap.rb +7 -9
- data/lib/new_relic/agent/hostname.rb +20 -13
- data/lib/new_relic/agent/http_clients/abstract.rb +8 -9
- data/lib/new_relic/agent/http_clients/curb_wrappers.rb +6 -11
- data/lib/new_relic/agent/http_clients/excon_wrappers.rb +8 -9
- data/lib/new_relic/agent/http_clients/http_rb_wrappers.rb +4 -5
- data/lib/new_relic/agent/http_clients/httpclient_wrappers.rb +2 -4
- data/lib/new_relic/agent/http_clients/net_http_wrappers.rb +2 -4
- data/lib/new_relic/agent/http_clients/typhoeus_wrappers.rb +4 -5
- data/lib/new_relic/agent/http_clients/uri_util.rb +1 -3
- data/lib/new_relic/agent/instrumentation/action_cable_subscriber.rb +9 -22
- data/lib/new_relic/agent/instrumentation/action_controller_other_subscriber.rb +39 -0
- data/lib/new_relic/agent/instrumentation/action_controller_subscriber.rb +37 -30
- data/lib/new_relic/agent/instrumentation/action_dispatch.rb +31 -0
- data/lib/new_relic/agent/instrumentation/action_dispatch_subscriber.rb +64 -0
- data/lib/new_relic/agent/instrumentation/action_mailbox.rb +30 -0
- data/lib/new_relic/agent/instrumentation/action_mailbox_subscriber.rb +33 -0
- data/lib/new_relic/agent/instrumentation/action_mailer.rb +30 -0
- data/lib/new_relic/agent/instrumentation/action_mailer_subscriber.rb +85 -0
- data/lib/new_relic/agent/instrumentation/action_view_subscriber.rb +18 -19
- data/lib/new_relic/agent/instrumentation/active_job.rb +33 -13
- data/lib/new_relic/agent/instrumentation/active_job_subscriber.rb +41 -0
- data/lib/new_relic/agent/instrumentation/active_merchant.rb +19 -5
- data/lib/new_relic/agent/instrumentation/active_record.rb +37 -35
- data/lib/new_relic/agent/instrumentation/active_record_helper.rb +71 -61
- data/lib/new_relic/agent/instrumentation/active_record_notifications.rb +49 -46
- data/lib/new_relic/agent/instrumentation/active_record_prepend.rb +4 -4
- data/lib/new_relic/agent/instrumentation/active_record_subscriber.rb +26 -17
- data/lib/new_relic/agent/instrumentation/active_storage.rb +7 -3
- data/lib/new_relic/agent/instrumentation/active_storage_subscriber.rb +8 -33
- data/lib/new_relic/agent/instrumentation/active_support.rb +27 -0
- data/lib/new_relic/agent/instrumentation/active_support_logger/chain.rb +23 -0
- data/lib/new_relic/agent/instrumentation/active_support_logger/instrumentation.rb +20 -0
- data/lib/new_relic/agent/instrumentation/active_support_logger/prepend.rb +12 -0
- data/lib/new_relic/agent/instrumentation/active_support_logger.rb +24 -0
- data/lib/new_relic/agent/instrumentation/active_support_subscriber.rb +41 -0
- data/lib/new_relic/agent/instrumentation/bunny/chain.rb +11 -11
- data/lib/new_relic/agent/instrumentation/bunny/instrumentation.rb +20 -22
- data/lib/new_relic/agent/instrumentation/bunny/prepend.rb +4 -4
- data/lib/new_relic/agent/instrumentation/bunny.rb +4 -5
- data/lib/new_relic/agent/instrumentation/concurrent_ruby/chain.rb +36 -0
- data/lib/new_relic/agent/instrumentation/concurrent_ruby/instrumentation.rb +21 -0
- data/lib/new_relic/agent/instrumentation/concurrent_ruby/prepend.rb +27 -0
- data/lib/new_relic/agent/instrumentation/concurrent_ruby.rb +31 -0
- data/lib/new_relic/agent/instrumentation/controller_instrumentation.rb +67 -58
- data/lib/new_relic/agent/instrumentation/curb/chain.rb +41 -43
- data/lib/new_relic/agent/instrumentation/curb/instrumentation.rb +52 -53
- data/lib/new_relic/agent/instrumentation/curb/prepend.rb +12 -14
- data/lib/new_relic/agent/instrumentation/curb.rb +7 -7
- data/lib/new_relic/agent/instrumentation/custom_events.rb +12 -0
- data/lib/new_relic/agent/instrumentation/custom_events_subscriber.rb +37 -0
- data/lib/new_relic/agent/instrumentation/delayed_job/chain.rb +6 -9
- data/lib/new_relic/agent/instrumentation/delayed_job/instrumentation.rb +4 -9
- data/lib/new_relic/agent/instrumentation/delayed_job/prepend.rb +1 -2
- data/lib/new_relic/agent/instrumentation/delayed_job_instrumentation.rb +28 -10
- data/lib/new_relic/agent/instrumentation/elasticsearch/chain.rb +29 -0
- data/lib/new_relic/agent/instrumentation/elasticsearch/instrumentation.rb +66 -0
- data/lib/new_relic/agent/instrumentation/elasticsearch/prepend.rb +13 -0
- data/lib/new_relic/agent/instrumentation/elasticsearch.rb +31 -0
- data/lib/new_relic/agent/instrumentation/excon/middleware.rb +6 -6
- data/lib/new_relic/agent/instrumentation/excon.rb +24 -8
- data/lib/new_relic/agent/instrumentation/fiber/chain.rb +20 -0
- data/lib/new_relic/agent/instrumentation/fiber/instrumentation.rb +24 -0
- data/lib/new_relic/agent/instrumentation/fiber/prepend.rb +18 -0
- data/lib/new_relic/agent/instrumentation/fiber.rb +25 -0
- data/lib/new_relic/agent/instrumentation/grape/chain.rb +7 -8
- data/lib/new_relic/agent/instrumentation/grape/instrumentation.rb +12 -12
- data/lib/new_relic/agent/instrumentation/grape/prepend.rb +4 -4
- data/lib/new_relic/agent/instrumentation/grape.rb +12 -13
- data/lib/new_relic/agent/instrumentation/grpc/client/chain.rb +97 -0
- data/lib/new_relic/agent/instrumentation/grpc/client/instrumentation.rb +89 -0
- data/lib/new_relic/agent/instrumentation/grpc/client/prepend.rb +111 -0
- data/lib/new_relic/agent/instrumentation/grpc/client/request_wrapper.rb +30 -0
- data/lib/new_relic/agent/instrumentation/grpc/helper.rb +32 -0
- data/lib/new_relic/agent/instrumentation/grpc/server/chain.rb +69 -0
- data/lib/new_relic/agent/instrumentation/grpc/server/instrumentation.rb +134 -0
- data/lib/new_relic/agent/instrumentation/grpc/server/rpc_desc_prepend.rb +35 -0
- data/lib/new_relic/agent/instrumentation/grpc/server/rpc_server_prepend.rb +26 -0
- data/lib/new_relic/agent/instrumentation/grpc_client.rb +23 -0
- data/lib/new_relic/agent/instrumentation/grpc_server.rb +25 -0
- data/lib/new_relic/agent/instrumentation/httpclient/chain.rb +3 -4
- data/lib/new_relic/agent/instrumentation/httpclient/instrumentation.rb +7 -8
- data/lib/new_relic/agent/instrumentation/httpclient/prepend.rb +1 -3
- data/lib/new_relic/agent/instrumentation/httpclient.rb +3 -3
- data/lib/new_relic/agent/instrumentation/httprb/chain.rb +3 -3
- data/lib/new_relic/agent/instrumentation/httprb/instrumentation.rb +11 -11
- data/lib/new_relic/agent/instrumentation/httprb/prepend.rb +2 -2
- data/lib/new_relic/agent/instrumentation/httprb.rb +4 -4
- data/lib/new_relic/agent/instrumentation/ignore_actions.rb +4 -5
- data/lib/new_relic/agent/instrumentation/logger/chain.rb +2 -2
- data/lib/new_relic/agent/instrumentation/logger/instrumentation.rb +27 -20
- data/lib/new_relic/agent/instrumentation/logger/prepend.rb +1 -1
- data/lib/new_relic/agent/instrumentation/logger.rb +7 -6
- data/lib/new_relic/agent/instrumentation/memcache/chain.rb +2 -3
- data/lib/new_relic/agent/instrumentation/memcache/dalli.rb +26 -18
- data/lib/new_relic/agent/instrumentation/memcache/helper.rb +8 -10
- data/lib/new_relic/agent/instrumentation/memcache/instrumentation.rb +20 -18
- data/lib/new_relic/agent/instrumentation/memcache/prepend.rb +22 -15
- data/lib/new_relic/agent/instrumentation/memcache.rb +22 -23
- data/lib/new_relic/agent/instrumentation/middleware_proxy.rb +11 -12
- data/lib/new_relic/agent/instrumentation/middleware_tracing.rb +5 -7
- data/lib/new_relic/agent/instrumentation/mongo.rb +3 -3
- data/lib/new_relic/agent/instrumentation/mongodb_command_subscriber.rb +21 -18
- data/lib/new_relic/agent/instrumentation/net_http/chain.rb +4 -5
- data/lib/new_relic/agent/instrumentation/net_http/instrumentation.rb +10 -10
- data/lib/new_relic/agent/instrumentation/net_http/prepend.rb +5 -5
- data/lib/new_relic/agent/instrumentation/net_http.rb +8 -8
- data/lib/new_relic/agent/instrumentation/notifications_subscriber.rb +51 -9
- data/lib/new_relic/agent/instrumentation/padrino/chain.rb +1 -1
- data/lib/new_relic/agent/instrumentation/padrino/instrumentation.rb +4 -3
- data/lib/new_relic/agent/instrumentation/padrino/prepend.rb +2 -2
- data/lib/new_relic/agent/instrumentation/padrino.rb +4 -9
- data/lib/new_relic/agent/instrumentation/passenger_instrumentation.rb +6 -6
- data/lib/new_relic/agent/instrumentation/queue_time.rb +5 -6
- data/lib/new_relic/agent/instrumentation/rack/chain.rb +27 -19
- data/lib/new_relic/agent/instrumentation/rack/helpers.rb +3 -2
- data/lib/new_relic/agent/instrumentation/rack/instrumentation.rb +14 -12
- data/lib/new_relic/agent/instrumentation/rack/prepend.rb +13 -7
- data/lib/new_relic/agent/instrumentation/rack.rb +15 -15
- data/lib/new_relic/agent/instrumentation/rails3/action_controller.rb +15 -15
- data/lib/new_relic/agent/instrumentation/rails_middleware.rb +4 -4
- data/lib/new_relic/agent/instrumentation/rails_notifications/action_cable.rb +9 -8
- data/lib/new_relic/agent/instrumentation/rails_notifications/action_controller.rb +17 -5
- data/lib/new_relic/agent/instrumentation/rails_notifications/action_view.rb +8 -5
- data/lib/new_relic/agent/instrumentation/rails_notifications/custom_events.rb +30 -0
- data/lib/new_relic/agent/instrumentation/rake/chain.rb +2 -7
- data/lib/new_relic/agent/instrumentation/rake/instrumentation.rb +14 -16
- data/lib/new_relic/agent/instrumentation/rake/prepend.rb +1 -1
- data/lib/new_relic/agent/instrumentation/rake.rb +9 -9
- data/lib/new_relic/agent/instrumentation/redis/chain.rb +25 -14
- data/lib/new_relic/agent/instrumentation/redis/constants.rb +17 -0
- data/lib/new_relic/agent/instrumentation/redis/instrumentation.rb +53 -25
- data/lib/new_relic/agent/instrumentation/redis/middleware.rb +16 -0
- data/lib/new_relic/agent/instrumentation/redis/prepend.rb +10 -5
- data/lib/new_relic/agent/instrumentation/redis.rb +13 -7
- data/lib/new_relic/agent/instrumentation/resque/chain.rb +4 -5
- data/lib/new_relic/agent/instrumentation/resque/helper.rb +2 -2
- data/lib/new_relic/agent/instrumentation/resque/instrumentation.rb +4 -5
- data/lib/new_relic/agent/instrumentation/resque/prepend.rb +2 -3
- data/lib/new_relic/agent/instrumentation/resque.rb +17 -17
- data/lib/new_relic/agent/instrumentation/sequel.rb +16 -19
- data/lib/new_relic/agent/instrumentation/sequel_helper.rb +2 -2
- data/lib/new_relic/agent/instrumentation/sidekiq/client.rb +20 -0
- data/lib/new_relic/agent/instrumentation/sidekiq/extensions/delayed_class.rb +30 -0
- data/lib/new_relic/agent/instrumentation/sidekiq/server.rb +37 -0
- data/lib/new_relic/agent/instrumentation/sidekiq.rb +24 -70
- data/lib/new_relic/agent/instrumentation/sinatra/chain.rb +1 -1
- data/lib/new_relic/agent/instrumentation/sinatra/ignorer.rb +2 -3
- data/lib/new_relic/agent/instrumentation/sinatra/instrumentation.rb +5 -4
- data/lib/new_relic/agent/instrumentation/sinatra/prepend.rb +1 -1
- data/lib/new_relic/agent/instrumentation/sinatra/transaction_namer.rb +2 -2
- data/lib/new_relic/agent/instrumentation/sinatra.rb +26 -17
- data/lib/new_relic/agent/instrumentation/thread/chain.rb +24 -0
- data/lib/new_relic/agent/instrumentation/thread/instrumentation.rb +28 -0
- data/lib/new_relic/agent/instrumentation/thread/prepend.rb +22 -0
- data/lib/new_relic/agent/instrumentation/thread.rb +20 -0
- data/lib/new_relic/agent/instrumentation/tilt/chain.rb +1 -1
- data/lib/new_relic/agent/instrumentation/tilt/instrumentation.rb +2 -2
- data/lib/new_relic/agent/instrumentation/tilt/prepend.rb +1 -1
- data/lib/new_relic/agent/instrumentation/tilt.rb +4 -4
- data/lib/new_relic/agent/instrumentation/typhoeus/chain.rb +5 -5
- data/lib/new_relic/agent/instrumentation/typhoeus/instrumentation.rb +13 -15
- data/lib/new_relic/agent/instrumentation/typhoeus/prepend.rb +2 -2
- data/lib/new_relic/agent/instrumentation/typhoeus.rb +2 -2
- data/lib/new_relic/agent/instrumentation.rb +1 -1
- data/lib/new_relic/agent/internal_agent_error.rb +2 -2
- data/lib/new_relic/agent/javascript_instrumentor.rb +38 -37
- data/lib/new_relic/agent/linking_metadata.rb +44 -0
- data/lib/new_relic/agent/local_log_decorator.rb +37 -0
- data/lib/new_relic/agent/log_event_aggregator.rb +235 -0
- data/lib/new_relic/agent/log_once.rb +1 -1
- data/lib/new_relic/agent/log_priority.rb +20 -0
- data/lib/new_relic/agent/logging.rb +21 -17
- data/lib/new_relic/agent/memory_logger.rb +2 -2
- data/lib/new_relic/agent/messaging.rb +61 -63
- data/lib/new_relic/agent/method_tracer.rb +28 -22
- data/lib/new_relic/agent/method_tracer_helpers.rb +88 -11
- data/lib/new_relic/agent/monitors/cross_app_monitor.rb +16 -16
- data/lib/new_relic/agent/monitors/distributed_tracing_monitor.rb +5 -4
- data/lib/new_relic/agent/monitors/inbound_request_monitor.rb +1 -2
- data/lib/new_relic/agent/monitors/synthetics_monitor.rb +6 -9
- data/lib/new_relic/agent/monitors.rb +6 -7
- data/lib/new_relic/agent/new_relic_service/encoders.rb +6 -6
- data/lib/new_relic/agent/new_relic_service/json_marshaller.rb +5 -5
- data/lib/new_relic/agent/new_relic_service/marshaller.rb +2 -2
- data/lib/new_relic/agent/new_relic_service/security_policy_settings.rb +4 -4
- data/lib/new_relic/agent/new_relic_service.rb +242 -185
- data/lib/new_relic/agent/{noticible_error.rb → noticeable_error.rb} +2 -5
- data/lib/new_relic/agent/null_logger.rb +7 -3
- data/lib/new_relic/agent/obfuscator.rb +8 -10
- data/lib/new_relic/agent/parameter_filtering.rb +24 -10
- data/lib/new_relic/agent/payload_metric_mapping.rb +9 -10
- data/lib/new_relic/agent/pipe_channel_manager.rb +17 -11
- data/lib/new_relic/agent/pipe_service.rb +7 -4
- data/lib/new_relic/agent/prepend_supportability.rb +2 -2
- data/lib/new_relic/agent/priority_sampled_buffer.rb +8 -11
- data/lib/new_relic/agent/range_extensions.rb +8 -28
- data/lib/new_relic/agent/rules_engine/replacement_rule.rb +11 -11
- data/lib/new_relic/agent/rules_engine/segment_terms_rule.rb +12 -13
- data/lib/new_relic/agent/rules_engine.rb +5 -4
- data/lib/new_relic/agent/sampler.rb +3 -4
- data/lib/new_relic/agent/sampler_collection.rb +3 -4
- data/lib/new_relic/agent/samplers/cpu_sampler.rb +2 -1
- data/lib/new_relic/agent/samplers/delayed_job_sampler.rb +6 -6
- data/lib/new_relic/agent/samplers/memory_sampler.rb +24 -13
- data/lib/new_relic/agent/samplers/object_sampler.rb +1 -1
- data/lib/new_relic/agent/samplers/vm_sampler.rb +21 -19
- data/lib/new_relic/agent/span_event_aggregator.rb +10 -10
- data/lib/new_relic/agent/span_event_primitive.rb +62 -56
- data/lib/new_relic/agent/sql_sampler.rb +17 -17
- data/lib/new_relic/agent/stats.rb +78 -41
- data/lib/new_relic/agent/stats_engine/gc_profiler.rb +9 -11
- data/lib/new_relic/agent/stats_engine/stats_hash.rb +12 -13
- data/lib/new_relic/agent/stats_engine.rb +7 -7
- data/lib/new_relic/agent/synthetics_event_aggregator.rb +7 -8
- data/lib/new_relic/agent/system_info.rb +85 -65
- data/lib/new_relic/agent/threading/agent_thread.rb +18 -14
- data/lib/new_relic/agent/threading/backtrace_node.rb +12 -13
- data/lib/new_relic/agent/threading/backtrace_service.rb +10 -9
- data/lib/new_relic/agent/threading/thread_profile.rb +22 -22
- data/lib/new_relic/agent/timestamp_sampled_buffer.rb +1 -1
- data/lib/new_relic/agent/tracer.rb +82 -56
- data/lib/new_relic/agent/transaction/abstract_segment.rb +100 -37
- data/lib/new_relic/agent/transaction/datastore_segment.rb +19 -18
- data/lib/new_relic/agent/transaction/distributed_tracer.rb +62 -56
- data/lib/new_relic/agent/transaction/distributed_tracing.rb +43 -44
- data/lib/new_relic/agent/transaction/external_request_segment.rb +41 -34
- data/lib/new_relic/agent/transaction/message_broker_segment.rb +30 -29
- data/lib/new_relic/agent/transaction/request_attributes.rb +35 -35
- data/lib/new_relic/agent/transaction/segment.rb +17 -10
- data/lib/new_relic/agent/transaction/slowest_sample_buffer.rb +1 -3
- data/lib/new_relic/agent/transaction/synthetics_sample_buffer.rb +1 -1
- data/lib/new_relic/agent/transaction/trace.rb +15 -11
- data/lib/new_relic/agent/transaction/trace_builder.rb +10 -10
- data/lib/new_relic/agent/transaction/trace_context.rb +35 -35
- data/lib/new_relic/agent/transaction/trace_node.rb +25 -24
- data/lib/new_relic/agent/transaction/tracing.rb +14 -11
- data/lib/new_relic/agent/transaction/transaction_sample_buffer.rb +5 -5
- data/lib/new_relic/agent/transaction.rb +169 -125
- data/lib/new_relic/agent/transaction_error_primitive.rb +27 -25
- data/lib/new_relic/agent/transaction_event_aggregator.rb +12 -12
- data/lib/new_relic/agent/transaction_event_primitive.rb +32 -33
- data/lib/new_relic/agent/transaction_event_recorder.rb +16 -15
- data/lib/new_relic/agent/transaction_metrics.rb +10 -9
- data/lib/new_relic/agent/transaction_sampler.rb +5 -6
- data/lib/new_relic/agent/transaction_time_aggregator.rb +21 -20
- data/lib/new_relic/agent/utilization/aws.rb +33 -3
- data/lib/new_relic/agent/utilization/azure.rb +3 -3
- data/lib/new_relic/agent/utilization/gcp.rb +7 -7
- data/lib/new_relic/agent/utilization/pcf.rb +5 -4
- data/lib/new_relic/agent/utilization/vendor.rb +43 -28
- data/lib/new_relic/agent/utilization_data.rb +7 -5
- data/lib/new_relic/agent/vm/jruby_vm.rb +1 -1
- data/lib/new_relic/agent/vm/monotonic_gc_profiler.rb +2 -2
- data/lib/new_relic/agent/vm/mri_vm.rb +40 -15
- data/lib/new_relic/agent/vm/snapshot.rb +4 -4
- data/lib/new_relic/agent/vm.rb +1 -1
- data/lib/new_relic/agent/worker_loop.rb +5 -7
- data/lib/new_relic/agent.rb +62 -81
- data/lib/new_relic/cli/command.rb +20 -22
- data/lib/new_relic/cli/commands/deployments.rb +91 -41
- data/lib/new_relic/cli/commands/install.rb +21 -24
- data/lib/new_relic/coerce.rb +15 -13
- data/lib/new_relic/collection_helper.rb +50 -48
- data/lib/new_relic/constants.rb +2 -1
- data/lib/new_relic/control/class_methods.rb +3 -3
- data/lib/new_relic/control/frameworks/external.rb +2 -2
- data/lib/new_relic/control/frameworks/rails.rb +13 -9
- data/lib/new_relic/control/frameworks/rails3.rb +3 -4
- data/lib/new_relic/control/frameworks/rails4.rb +1 -1
- data/lib/new_relic/control/frameworks/rails_notifications.rb +1 -1
- data/lib/new_relic/control/frameworks/ruby.rb +3 -3
- data/lib/new_relic/control/frameworks/sinatra.rb +7 -1
- data/lib/new_relic/control/frameworks.rb +1 -1
- data/lib/new_relic/control/instance_methods.rb +26 -45
- data/lib/new_relic/control/instrumentation.rb +39 -11
- data/lib/new_relic/control/private_instance_methods.rb +48 -0
- data/lib/new_relic/control/server_methods.rb +3 -4
- data/lib/new_relic/control.rb +1 -2
- data/lib/new_relic/delayed_job_injection.rb +1 -1
- data/lib/new_relic/dependency_detection.rb +29 -28
- data/lib/new_relic/environment_report.rb +40 -32
- data/lib/new_relic/helper.rb +48 -7
- data/lib/new_relic/language_support.rb +29 -5
- data/lib/new_relic/latest_changes.rb +7 -6
- data/lib/new_relic/local_environment.rb +22 -26
- data/lib/new_relic/metric_data.rb +31 -26
- data/lib/new_relic/metric_spec.rb +8 -6
- data/lib/new_relic/noticed_error.rb +17 -21
- data/lib/new_relic/rack/agent_hooks.rb +1 -1
- data/lib/new_relic/rack/agent_middleware.rb +5 -3
- data/lib/new_relic/rack/browser_monitoring.rb +133 -123
- data/lib/new_relic/rack.rb +1 -1
- data/lib/new_relic/recipes/capistrano3.rb +3 -61
- data/lib/new_relic/recipes/capistrano_legacy.rb +23 -26
- data/lib/new_relic/recipes/helpers/send_deployment.rb +70 -0
- data/lib/new_relic/recipes.rb +1 -1
- data/lib/new_relic/supportability_helper.rb +8 -9
- data/lib/new_relic/traced_thread.rb +39 -0
- data/lib/new_relic/version.rb +6 -17
- data/lib/newrelic_rpm.rb +14 -3
- data/lib/sequel/extensions/{newrelic_instrumentation.rb → new_relic_instrumentation.rb} +15 -18
- data/lib/sequel/plugins/{newrelic_instrumentation.rb → new_relic_instrumentation.rb} +8 -14
- data/lib/tasks/all.rb +2 -2
- data/lib/tasks/config.rake +21 -117
- data/lib/tasks/coverage_report.rake +28 -0
- data/lib/tasks/helpers/format.rb +123 -0
- data/lib/tasks/helpers/matches.rb +12 -0
- data/lib/tasks/helpers/prompt.rb +24 -0
- data/lib/tasks/helpers/removers.rb +33 -0
- data/lib/tasks/install.rake +4 -0
- data/lib/tasks/instrumentation_generator/README.md +63 -0
- data/lib/tasks/instrumentation_generator/TODO.md +33 -0
- data/lib/tasks/instrumentation_generator/instrumentation.thor +121 -0
- data/lib/tasks/instrumentation_generator/templates/Envfile.tt +9 -0
- data/lib/tasks/instrumentation_generator/templates/chain.tt +22 -0
- data/lib/tasks/instrumentation_generator/templates/chain_method.tt +8 -0
- data/lib/tasks/instrumentation_generator/templates/dependency_detection.tt +29 -0
- data/lib/tasks/instrumentation_generator/templates/instrumentation.tt +13 -0
- data/lib/tasks/instrumentation_generator/templates/instrumentation_method.tt +3 -0
- data/lib/tasks/instrumentation_generator/templates/newrelic.yml.tt +19 -0
- data/lib/tasks/instrumentation_generator/templates/prepend.tt +13 -0
- data/lib/tasks/instrumentation_generator/templates/prepend_method.tt +3 -0
- data/lib/tasks/instrumentation_generator/templates/test.tt +15 -0
- data/lib/tasks/multiverse.rake +4 -0
- data/lib/tasks/multiverse.rb +5 -32
- data/lib/tasks/newrelic.rb +1 -1
- data/lib/tasks/tests.rake +10 -15
- data/newrelic.yml +544 -452
- data/newrelic_rpm.gemspec +35 -31
- data/recipes/newrelic.rb +2 -2
- data/test/agent_helper.rb +196 -180
- metadata +130 -102
- data/ROADMAP.md +0 -24
- data/bin/mongrel_rpm +0 -33
- data/lib/new_relic/agent/datastores/mongo/obfuscator.rb +0 -44
- data/lib/new_relic/agent/instrumentation/acts_as_solr.rb +0 -75
- data/lib/new_relic/agent/instrumentation/authlogic.rb +0 -25
- data/lib/new_relic/agent/instrumentation/data_mapper.rb +0 -204
- data/lib/new_relic/agent/instrumentation/rainbows_instrumentation.rb +0 -26
- data/lib/new_relic/agent/instrumentation/sunspot.rb +0 -33
- /data/lib/tasks/{config.html.erb → helpers/config.html.erb} +0 -0
- /data/lib/tasks/{config.text.erb → helpers/config.text.erb} +0 -0
@@ -1,16 +1,15 @@
|
|
1
|
-
# encoding: utf-8
|
2
1
|
# This file is distributed under New Relic's license terms.
|
3
2
|
# See https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE for complete details.
|
3
|
+
# frozen_string_literal: true
|
4
4
|
|
5
5
|
require 'forwardable'
|
6
6
|
|
7
7
|
module NewRelic
|
8
8
|
module Agent
|
9
9
|
module Configuration
|
10
|
-
|
11
10
|
# Helper since default Procs are evaluated in the context of this module
|
12
11
|
def self.value_of(key)
|
13
|
-
|
12
|
+
proc do
|
14
13
|
NewRelic::Agent.config[key]
|
15
14
|
end
|
16
15
|
end
|
@@ -27,8 +26,8 @@ module NewRelic
|
|
27
26
|
# - if user set prepend to `false` then we use method_alias chaining
|
28
27
|
# - auto, when returned means, try to use prepend unless conflicting gems discovered
|
29
28
|
#
|
30
|
-
def self.instrumentation_value_of(disable_key, prepend_key=nil)
|
31
|
-
|
29
|
+
def self.instrumentation_value_of(disable_key, prepend_key = nil)
|
30
|
+
proc do
|
32
31
|
if NewRelic::Agent.config[disable_key]
|
33
32
|
"disabled"
|
34
33
|
elsif prepend_key && !NewRelic::Agent.config[prepend_key]
|
@@ -39,10 +38,16 @@ module NewRelic
|
|
39
38
|
end
|
40
39
|
end
|
41
40
|
|
41
|
+
def self.instrumentation_value_from_boolean(key)
|
42
|
+
proc do
|
43
|
+
NewRelic::Agent.config[key] ? 'auto' : 'disabled'
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
42
47
|
# Marks the config option as deprecated in the documentation once generated.
|
43
48
|
# Does not appear in logs.
|
44
|
-
def self.deprecated_description
|
45
|
-
link_ref = new_setting.to_s.
|
49
|
+
def self.deprecated_description(new_setting, description)
|
50
|
+
link_ref = new_setting.to_s.tr(".", "-")
|
46
51
|
%{Please see: [#{new_setting}](docs/agents/ruby-agent/configuration/ruby-agent-configuration##{link_ref}). \n\n#{description}}
|
47
52
|
end
|
48
53
|
|
@@ -76,11 +81,11 @@ module NewRelic
|
|
76
81
|
end
|
77
82
|
|
78
83
|
def self.config_search_paths
|
79
|
-
|
84
|
+
proc {
|
80
85
|
paths = [
|
81
|
-
File.join("config","newrelic.yml"),
|
86
|
+
File.join("config", "newrelic.yml"),
|
82
87
|
File.join("newrelic.yml"),
|
83
|
-
File.join("config","newrelic.yml.erb"),
|
88
|
+
File.join("config", "newrelic.yml.erb"),
|
84
89
|
File.join("newrelic.yml.erb")
|
85
90
|
]
|
86
91
|
|
@@ -91,11 +96,11 @@ module NewRelic
|
|
91
96
|
paths << File.join(NewRelic::Control.instance.root, "newrelic.yml.erb")
|
92
97
|
end
|
93
98
|
|
94
|
-
if ENV[
|
95
|
-
paths << File.join(ENV[
|
96
|
-
paths << File.join(ENV[
|
97
|
-
paths << File.join(ENV[
|
98
|
-
paths << File.join(ENV[
|
99
|
+
if ENV['HOME']
|
100
|
+
paths << File.join(ENV['HOME'], ".newrelic", "newrelic.yml")
|
101
|
+
paths << File.join(ENV['HOME'], "newrelic.yml")
|
102
|
+
paths << File.join(ENV['HOME'], ".newrelic", "newrelic.yml.erb")
|
103
|
+
paths << File.join(ENV['HOME'], "newrelic.yml.erb")
|
99
104
|
end
|
100
105
|
|
101
106
|
# If we're packaged for warbler, we can tell from GEM_HOME
|
@@ -110,28 +115,26 @@ module NewRelic
|
|
110
115
|
end
|
111
116
|
|
112
117
|
def self.config_path
|
113
|
-
|
118
|
+
proc {
|
114
119
|
found_path = NewRelic::Agent.config[:config_search_paths].detect do |file|
|
115
|
-
File.expand_path(file) if File.exist?
|
120
|
+
File.expand_path(file) if File.exist?(file)
|
116
121
|
end
|
117
|
-
found_path ||
|
122
|
+
found_path || NewRelic::EMPTY_STR
|
118
123
|
}
|
119
124
|
end
|
120
125
|
|
121
126
|
def self.framework
|
122
|
-
|
127
|
+
proc {
|
123
128
|
case
|
124
129
|
when defined?(::NewRelic::TEST) then :test
|
125
130
|
when defined?(::Rails::VERSION)
|
126
131
|
case Rails::VERSION::MAJOR
|
127
|
-
when 0..2
|
128
|
-
:rails
|
129
132
|
when 3
|
130
133
|
:rails3
|
131
|
-
when 4..
|
134
|
+
when 4..7
|
132
135
|
:rails_notifications
|
133
136
|
else
|
134
|
-
::NewRelic::Agent.logger.warn
|
137
|
+
::NewRelic::Agent.logger.warn("Detected untested Rails version #{Rails::VERSION::STRING}")
|
135
138
|
:rails_notifications
|
136
139
|
end
|
137
140
|
when defined?(::Sinatra) && defined?(::Sinatra::Base) then :sinatra
|
@@ -142,19 +145,19 @@ module NewRelic
|
|
142
145
|
end
|
143
146
|
|
144
147
|
def self.agent_enabled
|
145
|
-
|
148
|
+
proc {
|
146
149
|
NewRelic::Agent.config[:enabled] &&
|
147
|
-
|
148
|
-
|
150
|
+
(NewRelic::Agent.config[:test_mode] || NewRelic::Agent.config[:monitor_mode]) &&
|
151
|
+
NewRelic::Agent::Autostart.agent_should_start?
|
149
152
|
}
|
150
153
|
end
|
151
154
|
|
152
155
|
DEFAULT_LOG_DIR = 'log/'.freeze
|
153
156
|
|
154
157
|
def self.audit_log_path
|
155
|
-
|
158
|
+
proc {
|
156
159
|
log_file_path = NewRelic::Agent.config[:log_file_path]
|
157
|
-
wants_stdout
|
160
|
+
wants_stdout = (log_file_path.casecmp(NewRelic::STANDARD_OUT) == 0)
|
158
161
|
audit_log_dir = wants_stdout ? DEFAULT_LOG_DIR : log_file_path
|
159
162
|
|
160
163
|
File.join(audit_log_dir, 'newrelic_audit.log')
|
@@ -162,30 +165,23 @@ module NewRelic
|
|
162
165
|
end
|
163
166
|
|
164
167
|
def self.app_name
|
165
|
-
|
168
|
+
proc { NewRelic::Control.instance.env }
|
166
169
|
end
|
167
170
|
|
168
171
|
def self.dispatcher
|
169
|
-
|
172
|
+
proc { NewRelic::Control.instance.local_env.discovered_dispatcher }
|
170
173
|
end
|
171
174
|
|
172
175
|
def self.thread_profiler_enabled
|
173
|
-
|
174
|
-
end
|
175
|
-
|
176
|
-
# This check supports the js_errors_beta key we've asked clients to
|
177
|
-
# set. Once JS errors are GA, browser_monitoring.loader can stop
|
178
|
-
# being dynamic.
|
179
|
-
def self.browser_monitoring_loader
|
180
|
-
Proc.new { NewRelic::Agent.config[:js_errors_beta] ? "full" : "rum"}
|
176
|
+
proc { NewRelic::Agent::Threading::BacktraceService.is_supported? }
|
181
177
|
end
|
182
178
|
|
183
179
|
def self.transaction_tracer_transaction_threshold
|
184
|
-
|
180
|
+
proc { NewRelic::Agent.config[:apdex_t] * 4 }
|
185
181
|
end
|
186
182
|
|
187
183
|
def self.profiling_available
|
188
|
-
|
184
|
+
proc {
|
189
185
|
begin
|
190
186
|
require 'ruby-prof'
|
191
187
|
true
|
@@ -196,7 +192,7 @@ module NewRelic
|
|
196
192
|
end
|
197
193
|
|
198
194
|
def self.host
|
199
|
-
|
195
|
+
proc do
|
200
196
|
regex = /\A(?<identifier>.+?)x/
|
201
197
|
if matches = regex.match(String(NewRelic::Agent.config[:license_key]))
|
202
198
|
"collector.#{matches['identifier']}.nr-data.net"
|
@@ -207,12 +203,16 @@ module NewRelic
|
|
207
203
|
end
|
208
204
|
|
209
205
|
def self.api_host
|
210
|
-
|
211
|
-
|
212
|
-
|
206
|
+
# only used for deployment task
|
207
|
+
proc do
|
208
|
+
api_version = if NewRelic::Agent.config[:api_key].nil? || NewRelic::Agent.config[:api_key].empty?
|
209
|
+
"rpm"
|
213
210
|
else
|
214
|
-
|
211
|
+
"api"
|
215
212
|
end
|
213
|
+
api_region = "eu." if String(NewRelic::Agent.config[:license_key]).start_with?('eu')
|
214
|
+
|
215
|
+
"#{api_version}.#{api_region}newrelic.com"
|
216
216
|
end
|
217
217
|
end
|
218
218
|
|
@@ -235,30 +235,28 @@ module NewRelic
|
|
235
235
|
end
|
236
236
|
|
237
237
|
SEMICOLON = ';'.freeze
|
238
|
-
def self.convert_to_list_on_semicolon
|
238
|
+
def self.convert_to_list_on_semicolon(value)
|
239
239
|
case value
|
240
240
|
when Array then value
|
241
241
|
when String then value.split(SEMICOLON)
|
242
|
-
else
|
242
|
+
else NewRelic::EMPTY_ARRAY
|
243
243
|
end
|
244
244
|
end
|
245
245
|
|
246
246
|
def self.convert_to_constant_list(raw_value)
|
247
|
-
|
248
|
-
const_names.map! do |class_name|
|
249
|
-
const = ::NewRelic::LanguageSupport.constantize(class_name)
|
250
|
-
|
251
|
-
unless const
|
252
|
-
NewRelic::Agent.logger.warn("Ignoring unrecognized constant '#{class_name}' in #{raw_value}")
|
253
|
-
end
|
247
|
+
return NewRelic::EMPTY_ARRAY if raw_value.nil? || raw_value.empty?
|
254
248
|
|
249
|
+
constants = convert_to_list(raw_value).map! do |class_name|
|
250
|
+
const = ::NewRelic::LanguageSupport.constantize(class_name)
|
251
|
+
NewRelic::Agent.logger.warn("Ignoring invalid constant '#{class_name}' in #{raw_value}") unless const
|
255
252
|
const
|
256
253
|
end
|
257
|
-
|
254
|
+
constants.compact!
|
255
|
+
constants
|
258
256
|
end
|
259
257
|
|
260
258
|
def self.enforce_fallback(allowed_values: nil, fallback: nil)
|
261
|
-
|
259
|
+
proc do |configured_value|
|
262
260
|
if allowed_values.any? { |v| v =~ /#{configured_value}/i }
|
263
261
|
configured_value
|
264
262
|
else
|
@@ -321,28 +319,15 @@ module NewRelic
|
|
321
319
|
].join(',').freeze
|
322
320
|
|
323
321
|
DEFAULTS = {
|
324
|
-
|
325
|
-
:default => '',
|
326
|
-
:public => true,
|
327
|
-
:type => String,
|
328
|
-
:allowed_from_server => false,
|
329
|
-
:description => 'Your New Relic [license key](/docs/accounts-partnerships/accounts/account-setup/license-key).'
|
330
|
-
},
|
322
|
+
# Critical
|
331
323
|
:agent_enabled => {
|
332
324
|
:default => DefaultSource.agent_enabled,
|
325
|
+
:documentation_default => true,
|
333
326
|
:public => true,
|
334
327
|
:type => Boolean,
|
335
328
|
:allowed_from_server => false,
|
336
329
|
:description => 'If `true`, allows the Ruby agent to run.'
|
337
330
|
},
|
338
|
-
:enabled => {
|
339
|
-
:default => true,
|
340
|
-
:public => false,
|
341
|
-
:type => Boolean,
|
342
|
-
:aliases => [:enable],
|
343
|
-
:allowed_from_server => false,
|
344
|
-
:description => 'Enable or disable the agent.'
|
345
|
-
},
|
346
331
|
:app_name => {
|
347
332
|
:default => DefaultSource.app_name,
|
348
333
|
:public => true,
|
@@ -351,27 +336,12 @@ module NewRelic
|
|
351
336
|
:transform => DefaultSource.method(:convert_to_list_on_semicolon),
|
352
337
|
:description => 'Specify the [application name](/docs/apm/new-relic-apm/installation-configuration/name-your-application) used to aggregate data in the New Relic UI. To report data to [multiple apps at the same time](/docs/apm/new-relic-apm/installation-configuration/using-multiple-names-app), specify a list of names separated by a semicolon `;`. For example, `MyApp` or `MyStagingApp;Instance1`.'
|
353
338
|
},
|
354
|
-
:
|
355
|
-
:default =>
|
356
|
-
:allow_nil => true,
|
357
|
-
:public => false,
|
358
|
-
:type => String,
|
359
|
-
:allowed_from_server => true,
|
360
|
-
:description => 'The [Entity GUID](/attribute-dictionary/span/entityguid) for the entity running this agent.'
|
361
|
-
},
|
362
|
-
:monitor_mode => {
|
363
|
-
:default => value_of(:enabled),
|
339
|
+
:license_key => {
|
340
|
+
:default => '',
|
364
341
|
:public => true,
|
365
|
-
:type =>
|
366
|
-
:allowed_from_server => false,
|
367
|
-
:description => 'When `true`, the agent transmits data about your app to the New Relic [collector](/docs/using-new-relic/welcome-new-relic/get-started/glossary/#collector).'
|
368
|
-
},
|
369
|
-
:test_mode => {
|
370
|
-
:default => false,
|
371
|
-
:public => false,
|
372
|
-
:type => Boolean,
|
342
|
+
:type => String,
|
373
343
|
:allowed_from_server => false,
|
374
|
-
:description => '
|
344
|
+
:description => 'Your New Relic <LicenseKey />.'
|
375
345
|
},
|
376
346
|
:log_level => {
|
377
347
|
:default => 'info',
|
@@ -380,73 +350,75 @@ module NewRelic
|
|
380
350
|
:allowed_from_server => false,
|
381
351
|
:description => 'Sets the level of detail of log messages. Possible log levels, in increasing verbosity, are: `error`, `warn`, `info` or `debug`.'
|
382
352
|
},
|
383
|
-
|
384
|
-
|
353
|
+
# General
|
354
|
+
:active_support_custom_events_names => {
|
355
|
+
:default => [],
|
385
356
|
:public => true,
|
386
|
-
:type =>
|
357
|
+
:type => Array,
|
387
358
|
:allowed_from_server => false,
|
388
|
-
:description =>
|
359
|
+
:description => <<~DESCRIPTION
|
360
|
+
An array of ActiveSupport custom event names to subscribe to and instrument. For example,
|
361
|
+
- one.custom.event
|
362
|
+
- another.event
|
363
|
+
- a.third.event
|
364
|
+
DESCRIPTION
|
389
365
|
},
|
390
|
-
|
391
|
-
|
392
|
-
:
|
393
|
-
:
|
394
|
-
:
|
395
|
-
:
|
366
|
+
# this is only set via server side config
|
367
|
+
:apdex_t => {
|
368
|
+
:default => 0.5,
|
369
|
+
:public => false,
|
370
|
+
:type => Float,
|
371
|
+
:allowed_from_server => true,
|
372
|
+
:description => 'For agent versions 3.5.0 or higher, [set your Apdex T via the New Relic UI](/docs/apm/new-relic-apm/apdex/changing-your-apdex-settings).'
|
396
373
|
},
|
397
|
-
:
|
398
|
-
:default =>
|
399
|
-
:allow_nil => true,
|
374
|
+
:api_key => {
|
375
|
+
:default => '',
|
400
376
|
:public => true,
|
401
377
|
:type => String,
|
402
378
|
:allowed_from_server => false,
|
403
|
-
:description => '
|
379
|
+
:description => 'Your New Relic [user key](/docs/apis/intro-apis/new-relic-api-keys/#overview-keys). Required when using the New Relic REST API v2 to record deployments using the `newrelic deployments` command.'
|
404
380
|
},
|
405
|
-
:
|
406
|
-
:default =>
|
407
|
-
:allow_nil => true,
|
381
|
+
:backport_fast_active_record_connection_lookup => {
|
382
|
+
:default => false,
|
408
383
|
:public => true,
|
409
|
-
:type =>
|
384
|
+
:type => Boolean,
|
410
385
|
:allowed_from_server => false,
|
411
|
-
:description => '
|
386
|
+
:description => 'Backports the faster ActiveRecord connection lookup introduced in Rails 6, which improves agent performance when instrumenting ActiveRecord. Note that this setting may not be compatible with other gems that patch ActiveRecord.'
|
412
387
|
},
|
413
|
-
:
|
388
|
+
:ca_bundle_path => {
|
414
389
|
:default => nil,
|
415
390
|
:allow_nil => true,
|
416
391
|
:public => true,
|
417
392
|
:type => String,
|
418
393
|
:allowed_from_server => false,
|
419
|
-
:
|
420
|
-
:description => 'Defines a user for communicating with the New Relic [collector](/docs/using-new-relic/welcome-new-relic/get-started/glossary/#collector) via a proxy server.'
|
394
|
+
:description => "Manual override for the path to your local CA bundle. This CA bundle will be used to validate the SSL certificate presented by New Relic's data collection service."
|
421
395
|
},
|
422
|
-
:
|
423
|
-
:default =>
|
424
|
-
:allow_nil => true,
|
396
|
+
:capture_memcache_keys => {
|
397
|
+
:default => false,
|
425
398
|
:public => true,
|
426
|
-
:type =>
|
427
|
-
:allowed_from_server =>
|
428
|
-
:
|
429
|
-
:description => 'Defines a password for communicating with the New Relic [collector](/docs/using-new-relic/welcome-new-relic/get-started/glossary/#collector) via a proxy server.'
|
399
|
+
:type => Boolean,
|
400
|
+
:allowed_from_server => true,
|
401
|
+
:description => 'Enable or disable the capture of memcache keys from transaction traces.'
|
430
402
|
},
|
431
403
|
:capture_params => {
|
432
404
|
:default => false,
|
433
405
|
:public => true,
|
434
406
|
:type => Boolean,
|
435
407
|
:allowed_from_server => false,
|
436
|
-
:description =>
|
437
|
-
|
438
|
-
|
439
|
-
|
440
|
-
|
441
|
-
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
|
446
|
-
|
447
|
-
|
448
|
-
|
449
|
-
|
408
|
+
:description => <<~DESCRIPTION
|
409
|
+
When `true`, the agent captures HTTP request parameters and attaches them to transaction traces, traced errors, and [`TransactionError` events](/attribute-dictionary?attribute_name=&events_tids%5B%5D=8241).
|
410
|
+
|
411
|
+
<Callout variant="caution">
|
412
|
+
When using the `capture_params` setting, the Ruby agent will not attempt to filter secret information. <b>Recommendation:</b> To filter secret information from request parameters, use the [`attributes.include` setting](/docs/agents/ruby-agent/attributes/enable-disable-attributes-ruby) instead. For more information, see the <a href="/docs/agents/ruby-agent/attributes/ruby-attribute-examples#ex_req_params">Ruby attribute examples</a>.
|
413
|
+
</Callout>
|
414
|
+
DESCRIPTION
|
415
|
+
},
|
416
|
+
:'clear_transaction_state_after_fork' => {
|
417
|
+
:default => false,
|
418
|
+
:public => true,
|
419
|
+
:type => Boolean,
|
420
|
+
:allowed_from_server => false,
|
421
|
+
:description => 'If `true`, the agent will clear `Tracer::State` in `Agent.drop_buffered_data`.'
|
450
422
|
},
|
451
423
|
:config_path => {
|
452
424
|
:default => DefaultSource.config_path,
|
@@ -455,130 +427,122 @@ module NewRelic
|
|
455
427
|
:allowed_from_server => false,
|
456
428
|
:description => 'Path to <b>newrelic.yml</b>. If undefined, the agent checks the following directories (in order): <b>config/newrelic.yml</b>, <b>newrelic.yml</b>, <b>$HOME/.newrelic/newrelic.yml</b> and <b>$HOME/newrelic.yml</b>.'
|
457
429
|
},
|
458
|
-
:
|
459
|
-
:default =>
|
460
|
-
:public =>
|
461
|
-
:type =>
|
430
|
+
:'exclude_newrelic_header' => {
|
431
|
+
:default => false,
|
432
|
+
:public => true,
|
433
|
+
:type => Boolean,
|
434
|
+
:allowed_from_server => true,
|
435
|
+
:description => "Allows newrelic distributed tracing headers to be suppressed on outbound requests."
|
436
|
+
},
|
437
|
+
:force_install_exit_handler => {
|
438
|
+
:default => false,
|
439
|
+
:public => true,
|
440
|
+
:type => Boolean,
|
462
441
|
:allowed_from_server => false,
|
463
|
-
:description =>
|
442
|
+
:description => 'Forces the exit handler that sends all cached data to collector ' \
|
443
|
+
'before shutting down to be installed regardless of detecting scenarios where it generally should not be. ' \
|
444
|
+
'Known use-case for this option is where Sinatra is running as an embedded service within another framework ' \
|
445
|
+
'and the agent is detecting the Sinatra app and skipping the `at_exit` handler as a result. Sinatra classically ' \
|
446
|
+
'runs the entire application in an `at_exit` block and would otherwise misbehave if the Agent\'s `at_exit` handler ' \
|
447
|
+
'was also installed in those circumstances. Note: `send_data_on_exit` should also be set to `true` in tandem with this setting.'
|
464
448
|
},
|
465
|
-
:
|
466
|
-
:default =>
|
467
|
-
:public =>
|
468
|
-
:type =>
|
449
|
+
:high_security => {
|
450
|
+
:default => false,
|
451
|
+
:public => true,
|
452
|
+
:type => Boolean,
|
469
453
|
:allowed_from_server => false,
|
470
|
-
:description => '
|
454
|
+
:description => 'If `true`, enables [high security mode](/docs/accounts-partnerships/accounts/security/high-security). Ensure you understand the implications of high security mode before enabling this setting.'
|
471
455
|
},
|
472
|
-
:
|
473
|
-
:default =>
|
474
|
-
:public =>
|
475
|
-
:type =>
|
456
|
+
:labels => {
|
457
|
+
:default => '',
|
458
|
+
:public => true,
|
459
|
+
:type => String,
|
476
460
|
:allowed_from_server => false,
|
477
|
-
:description => '
|
461
|
+
:description => 'A dictionary of [label names](/docs/data-analysis/user-interface-functions/labels-categories-organize-your-apps-servers) and values that will be applied to the data sent from this agent. May also be expressed as a semicolon-delimited `;` string of colon-separated `:` pairs. For example, `Server:One;Data Center:Primary`.'
|
478
462
|
},
|
479
|
-
:
|
480
|
-
:default => '
|
463
|
+
:log_file_name => {
|
464
|
+
:default => 'newrelic_agent.log',
|
481
465
|
:public => true,
|
482
466
|
:type => String,
|
483
467
|
:allowed_from_server => false,
|
484
|
-
:description => '
|
468
|
+
:description => 'Defines a name for the log file.'
|
485
469
|
},
|
486
|
-
:
|
487
|
-
:default =>
|
470
|
+
:log_file_path => {
|
471
|
+
:default => DefaultSource::DEFAULT_LOG_DIR,
|
488
472
|
:public => true,
|
489
473
|
:type => String,
|
490
474
|
:allowed_from_server => false,
|
491
|
-
:description => 'Defines a
|
475
|
+
:description => 'Defines a path to the agent log file, excluding the filename.'
|
492
476
|
},
|
493
|
-
:
|
494
|
-
:default =>
|
477
|
+
:marshaller => {
|
478
|
+
:default => 'json',
|
495
479
|
:public => true,
|
496
480
|
:type => String,
|
497
481
|
:allowed_from_server => false,
|
498
|
-
:description => '
|
482
|
+
:description => 'Specifies a marshaller for transmitting data to the New Relic [collector](/docs/apm/new-relic-apm/getting-started/glossary#collector). Currently `json` is the only valid value for this setting.'
|
499
483
|
},
|
500
|
-
|
501
|
-
|
502
|
-
:
|
484
|
+
:monitor_mode => {
|
485
|
+
:default => value_of(:enabled),
|
486
|
+
:documentation_default => true,
|
503
487
|
:public => true,
|
504
488
|
:type => Boolean,
|
505
489
|
:allowed_from_server => false,
|
506
|
-
:
|
507
|
-
:description => deprecated_description(:'instrumentation.rake', 'If `true`, disables Rake instrumentation.')
|
490
|
+
:description => 'When `true`, the agent transmits data about your app to the New Relic [collector](/docs/using-new-relic/welcome-new-relic/get-started/glossary/#collector).'
|
508
491
|
},
|
509
|
-
:
|
492
|
+
:prepend_active_record_instrumentation => {
|
510
493
|
:default => false,
|
511
|
-
:public =>
|
494
|
+
:public => true,
|
512
495
|
:type => Boolean,
|
513
496
|
:allowed_from_server => false,
|
514
|
-
:
|
515
|
-
:description => deprecated_description(:'instrumentation.rake', 'Enable or disable Rake instrumentation. Preferred key is `disable_rake`')
|
497
|
+
:description => 'If `true`, uses `Module#prepend` rather than `alias_method` for ActiveRecord instrumentation.'
|
516
498
|
},
|
517
|
-
:
|
518
|
-
:default =>
|
499
|
+
:proxy_host => {
|
500
|
+
:default => nil,
|
501
|
+
:allow_nil => true,
|
519
502
|
:public => true,
|
520
|
-
:type =>
|
503
|
+
:type => String,
|
521
504
|
:allowed_from_server => false,
|
522
|
-
:
|
523
|
-
:description => 'Specify an array of Rake tasks to automatically instrument.'
|
505
|
+
:description => 'Defines a host for communicating with the New Relic [collector](/docs/using-new-relic/welcome-new-relic/get-started/glossary/#collector) via a proxy server.'
|
524
506
|
},
|
525
|
-
:
|
526
|
-
:default =>
|
507
|
+
:proxy_pass => {
|
508
|
+
:default => nil,
|
509
|
+
:allow_nil => true,
|
527
510
|
:public => true,
|
528
|
-
:type =>
|
511
|
+
:type => String,
|
529
512
|
:allowed_from_server => false,
|
530
|
-
:
|
531
|
-
|
532
|
-
:apdex_t => {
|
533
|
-
:default => 0.5,
|
534
|
-
:public => true,
|
535
|
-
:type => Float,
|
536
|
-
:allowed_from_server => true,
|
537
|
-
:deprecated => true,
|
538
|
-
:description => 'For agent versions 3.5.0 or higher, [set your Apdex T via the New Relic UI](/docs/apm/new-relic-apm/apdex/changing-your-apdex-settings).'
|
513
|
+
:exclude_from_reported_settings => true,
|
514
|
+
:description => 'Defines a password for communicating with the New Relic [collector](/docs/using-new-relic/welcome-new-relic/get-started/glossary/#collector) via a proxy server.'
|
539
515
|
},
|
540
|
-
:
|
541
|
-
:default =>
|
516
|
+
:proxy_port => {
|
517
|
+
:default => 8080,
|
518
|
+
:allow_nil => true,
|
542
519
|
:public => true,
|
543
|
-
:type =>
|
520
|
+
:type => Integer,
|
544
521
|
:allowed_from_server => false,
|
545
|
-
:description => '
|
522
|
+
:description => 'Defines a port for communicating with the New Relic [collector](/docs/using-new-relic/welcome-new-relic/get-started/glossary/#collector) via a proxy server.'
|
546
523
|
},
|
547
|
-
:
|
548
|
-
:default =>
|
524
|
+
:proxy_user => {
|
525
|
+
:default => nil,
|
526
|
+
:allow_nil => true,
|
549
527
|
:public => true,
|
550
528
|
:type => String,
|
551
529
|
:allowed_from_server => false,
|
552
|
-
:
|
553
|
-
:description => '
|
554
|
-
},
|
555
|
-
:host => {
|
556
|
-
:default => DefaultSource.host,
|
557
|
-
:public => false,
|
558
|
-
:type => String,
|
559
|
-
:allowed_from_server => false,
|
560
|
-
:description => "URI for the New Relic data collection service."
|
530
|
+
:exclude_from_reported_settings => true,
|
531
|
+
:description => 'Defines a user for communicating with the New Relic [collector](/docs/using-new-relic/welcome-new-relic/get-started/glossary/#collector) via a proxy server.'
|
561
532
|
},
|
562
|
-
:
|
563
|
-
:default =>
|
564
|
-
:public =>
|
533
|
+
:security_policies_token => {
|
534
|
+
:default => '',
|
535
|
+
:public => true,
|
565
536
|
:type => String,
|
566
537
|
:allowed_from_server => false,
|
567
|
-
:description => '
|
568
|
-
},
|
569
|
-
:port => {
|
570
|
-
:default => 443,
|
571
|
-
:public => false,
|
572
|
-
:type => Integer,
|
573
|
-
:allowed_from_server => false,
|
574
|
-
:description => 'Port for the New Relic data collection service.'
|
538
|
+
:description => 'Applies Language Agent Security Policy settings.'
|
575
539
|
},
|
576
|
-
:
|
577
|
-
:default =>
|
578
|
-
:public =>
|
579
|
-
:type =>
|
540
|
+
:send_data_on_exit => {
|
541
|
+
:default => true,
|
542
|
+
:public => true,
|
543
|
+
:type => Boolean,
|
580
544
|
:allowed_from_server => false,
|
581
|
-
:description => '
|
545
|
+
:description => 'If `true`, enables the exit handler that sends data to the New Relic [collector](/docs/using-new-relic/welcome-new-relic/get-started/glossary/#collector) before shutting down.'
|
582
546
|
},
|
583
547
|
:sync_startup => {
|
584
548
|
:default => false,
|
@@ -587,616 +551,636 @@ module NewRelic
|
|
587
551
|
:allowed_from_server => false,
|
588
552
|
:description => 'When set to `true`, forces a synchronous connection to the New Relic [collector](/docs/using-new-relic/welcome-new-relic/get-started/glossary/#collector) during application startup. For very short-lived processes, this helps ensure the New Relic agent has time to report.'
|
589
553
|
},
|
590
|
-
:
|
591
|
-
:default =>
|
554
|
+
:timeout => {
|
555
|
+
:default => 2 * 60, # 2 minutes
|
592
556
|
:public => true,
|
593
|
-
:type =>
|
557
|
+
:type => Integer,
|
594
558
|
:allowed_from_server => false,
|
595
|
-
:description => '
|
559
|
+
:description => 'Defines the maximum number of seconds the agent should spend attempting to connect to the collector.'
|
596
560
|
},
|
597
|
-
|
598
|
-
|
599
|
-
:
|
561
|
+
# Transaction tracer
|
562
|
+
:'transaction_tracer.enabled' => {
|
563
|
+
:default => true,
|
564
|
+
:public => true,
|
565
|
+
:type => Boolean,
|
566
|
+
:allowed_from_server => true,
|
567
|
+
:description => 'If `true`, enables collection of [transaction traces](/docs/apm/traces/transaction-traces/transaction-traces).'
|
568
|
+
},
|
569
|
+
:'transaction_tracer.explain_enabled' => {
|
570
|
+
:default => true,
|
571
|
+
:public => true,
|
572
|
+
:type => Boolean,
|
573
|
+
:allowed_from_server => true,
|
574
|
+
:description => 'If `true`, enables the collection of explain plans in transaction traces. This setting will also apply to explain plans in slow SQL traces if [`slow_sql.explain_enabled`](#slow_sql-explain_enabled) is not set separately.'
|
575
|
+
},
|
576
|
+
:'transaction_tracer.explain_threshold' => {
|
577
|
+
:default => 0.5,
|
578
|
+
:public => true,
|
579
|
+
:type => Float,
|
580
|
+
:allowed_from_server => true,
|
581
|
+
:description => 'Threshold (in seconds) above which the agent will collect explain plans. Relevant only when [`explain_enabled`](#transaction_tracer.explain_enabled) is true.'
|
582
|
+
},
|
583
|
+
:'transaction_tracer.limit_segments' => {
|
584
|
+
:default => 4000,
|
585
|
+
:public => true,
|
600
586
|
:type => Integer,
|
601
587
|
:allowed_from_server => true,
|
602
|
-
:description => 'Maximum number of
|
588
|
+
:description => 'Maximum number of transaction trace nodes to record in a single transaction trace.'
|
603
589
|
},
|
604
|
-
:
|
590
|
+
:'transaction_tracer.record_redis_arguments' => {
|
605
591
|
:default => false,
|
606
|
-
:public =>
|
592
|
+
:public => true,
|
607
593
|
:type => Boolean,
|
608
594
|
:allowed_from_server => false,
|
609
|
-
:description => '
|
595
|
+
:description => 'If `true`, the agent records Redis command arguments in transaction traces.'
|
610
596
|
},
|
611
|
-
:
|
612
|
-
:default => '
|
613
|
-
:public =>
|
597
|
+
:'transaction_tracer.record_sql' => {
|
598
|
+
:default => 'obfuscated',
|
599
|
+
:public => true,
|
614
600
|
:type => String,
|
615
|
-
:allowed_from_server =>
|
616
|
-
:description => '
|
601
|
+
:allowed_from_server => true,
|
602
|
+
:description => 'Obfuscation level for SQL queries reported in transaction trace nodes.
|
603
|
+
|
604
|
+
By default, this is set to `obfuscated`, which strips out the numeric and string literals.
|
605
|
+
|
606
|
+
- If you do not want the agent to capture query information, set this to `none`.
|
607
|
+
- If you want the agent to capture all query information in its original form, set this to `raw`.
|
608
|
+
- When you enable [high security mode](/docs/agents/manage-apm-agents/configuration/high-security-mode), this is automatically set to `obfuscated`.
|
609
|
+
'
|
617
610
|
},
|
618
|
-
|
619
|
-
|
620
|
-
:
|
621
|
-
:
|
622
|
-
:
|
623
|
-
:
|
611
|
+
|
612
|
+
:'transaction_tracer.stack_trace_threshold' => {
|
613
|
+
:default => 0.5,
|
614
|
+
:public => true,
|
615
|
+
:type => Float,
|
616
|
+
:allowed_from_server => true,
|
617
|
+
:description => 'Specify a threshold in seconds. The agent includes stack traces in transaction trace nodes when the stack trace duration exceeds this threshold.'
|
624
618
|
},
|
625
|
-
:
|
626
|
-
:default =>
|
619
|
+
:'transaction_tracer.transaction_threshold' => {
|
620
|
+
:default => DefaultSource.transaction_tracer_transaction_threshold,
|
627
621
|
:public => true,
|
628
|
-
:type =>
|
629
|
-
:allowed_from_server =>
|
630
|
-
:description => '
|
622
|
+
:type => Float,
|
623
|
+
:allowed_from_server => true,
|
624
|
+
:description => 'Specify a threshold in seconds. Transactions with a duration longer than this threshold are eligible for transaction traces. Specify a float value or the string `apdex_f`.'
|
631
625
|
},
|
632
|
-
|
633
|
-
|
634
|
-
:
|
626
|
+
# Error collector
|
627
|
+
:'error_collector.ignore_classes' => {
|
628
|
+
:default => ['ActionController::RoutingError', 'Sinatra::NotFound'],
|
629
|
+
:public => true,
|
630
|
+
:type => Array,
|
631
|
+
:allowed_from_server => true,
|
632
|
+
:dynamic_name => true,
|
633
|
+
:description => <<~DESCRIPTION
|
634
|
+
A list of error classes that the agent should ignore.
|
635
|
+
|
636
|
+
<Callout variant="caution">
|
637
|
+
This option can't be set via environment variable.
|
638
|
+
</Callout>
|
639
|
+
DESCRIPTION
|
640
|
+
},
|
641
|
+
:'error_collector.capture_events' => {
|
642
|
+
:default => value_of(:'error_collector.enabled'),
|
643
|
+
:documentation_default => true,
|
644
|
+
:public => true,
|
635
645
|
:type => Boolean,
|
636
|
-
:allowed_from_server =>
|
637
|
-
:
|
646
|
+
:allowed_from_server => true,
|
647
|
+
:dynamic_name => true,
|
648
|
+
:description => 'If `true`, the agent collects [TransactionError events](/docs/insights/new-relic-insights/decorating-events/error-event-default-attributes-insights).'
|
638
649
|
},
|
639
|
-
:
|
640
|
-
:default =>
|
641
|
-
:public =>
|
642
|
-
:type =>
|
650
|
+
:'error_collector.enabled' => {
|
651
|
+
:default => true,
|
652
|
+
:public => true,
|
653
|
+
:type => Boolean,
|
643
654
|
:allowed_from_server => true,
|
644
|
-
:description => '
|
655
|
+
:description => 'If `true`, the agent captures traced errors and error count metrics.'
|
645
656
|
},
|
646
|
-
:
|
647
|
-
:default =>
|
648
|
-
:public =>
|
649
|
-
:type =>
|
657
|
+
:'error_collector.expected_classes' => {
|
658
|
+
:default => [],
|
659
|
+
:public => true,
|
660
|
+
:type => Array,
|
650
661
|
:allowed_from_server => true,
|
651
|
-
:
|
662
|
+
:dynamic_name => true,
|
663
|
+
:description => <<~DESCRIPTION
|
664
|
+
A list of error classes that the agent should treat as expected.
|
665
|
+
|
666
|
+
<Callout variant="caution">
|
667
|
+
This option can't be set via environment variable.
|
668
|
+
</Callout>
|
669
|
+
DESCRIPTION
|
652
670
|
},
|
653
|
-
:'
|
654
|
-
:default =>
|
655
|
-
:public =>
|
656
|
-
:type =>
|
671
|
+
:'error_collector.expected_messages' => {
|
672
|
+
:default => {},
|
673
|
+
:public => true,
|
674
|
+
:type => Hash,
|
675
|
+
:allowed_from_server => true,
|
657
676
|
:dynamic_name => true,
|
677
|
+
:description => <<~DESCRIPTION
|
678
|
+
A map of error classes to a list of messages. When an error of one of the classes specified here occurs, if its error message contains one of the strings corresponding to it here, that error will be treated as expected.
|
679
|
+
|
680
|
+
<Callout variant="caution">
|
681
|
+
This option can't be set via environment variable.
|
682
|
+
</Callout>
|
683
|
+
DESCRIPTION
|
684
|
+
},
|
685
|
+
:'error_collector.expected_status_codes' => {
|
686
|
+
:default => '',
|
687
|
+
:public => true,
|
688
|
+
:type => String,
|
658
689
|
:allowed_from_server => true,
|
659
|
-
:
|
690
|
+
:dynamic_name => true,
|
691
|
+
:description => 'A comma separated list of status codes, possibly including ranges. Errors associated with these status codes, where applicable, will be treated as expected.'
|
660
692
|
},
|
661
|
-
|
662
|
-
|
663
|
-
:
|
664
|
-
:
|
693
|
+
|
694
|
+
:'error_collector.ignore_messages' => {
|
695
|
+
:default => {},
|
696
|
+
:public => true,
|
697
|
+
:type => Hash,
|
698
|
+
:allowed_from_server => true,
|
665
699
|
:dynamic_name => true,
|
700
|
+
:description => <<~DESCRIPTION
|
701
|
+
A map of error classes to a list of messages. When an error of one of the classes specified here occurs, if its error message contains one of the strings corresponding to it here, that error will be ignored.
|
702
|
+
|
703
|
+
<Callout variant="caution">
|
704
|
+
This option can't be set via environment variable.
|
705
|
+
</Callout>
|
706
|
+
DESCRIPTION
|
707
|
+
},
|
708
|
+
:'error_collector.ignore_status_codes' => {
|
709
|
+
:default => '',
|
710
|
+
:public => true,
|
711
|
+
:type => String,
|
666
712
|
:allowed_from_server => true,
|
667
|
-
:
|
713
|
+
:dynamic_name => true,
|
714
|
+
:description => 'A comma separated list of status codes, possibly including ranges. Errors associated with these status codes, where applicable, will be ignored.'
|
668
715
|
},
|
669
|
-
:'
|
670
|
-
:default =>
|
671
|
-
:public =>
|
716
|
+
:'error_collector.max_backtrace_frames' => {
|
717
|
+
:default => 50,
|
718
|
+
:public => true,
|
719
|
+
:type => Integer,
|
720
|
+
:allowed_from_server => false,
|
721
|
+
:description => 'Defines the maximum number of frames in an error backtrace. Backtraces over this amount are truncated at the beginning and end.'
|
722
|
+
},
|
723
|
+
:'error_collector.max_event_samples_stored' => {
|
724
|
+
:default => 100,
|
725
|
+
:public => true,
|
672
726
|
:type => Integer,
|
673
|
-
:dynamic_name => true,
|
674
727
|
:allowed_from_server => true,
|
675
|
-
:description => '
|
728
|
+
:description => 'Defines the maximum number of [TransactionError events](/docs/insights/new-relic-insights/decorating-events/error-event-default-attributes-insights) reported per harvest cycle.'
|
676
729
|
},
|
677
|
-
|
678
|
-
|
679
|
-
:
|
730
|
+
# Browser monitoring
|
731
|
+
:'browser_monitoring.auto_instrument' => {
|
732
|
+
:default => value_of(:'rum.enabled'),
|
733
|
+
:documentation_default => true,
|
734
|
+
:public => true,
|
735
|
+
:type => Boolean,
|
736
|
+
:allowed_from_server => true,
|
737
|
+
:description => 'If `true`, enables [auto-injection](/docs/browser/new-relic-browser/installation-configuration/adding-apps-new-relic-browser#select-apm-app) of the JavaScript header for page load timing (sometimes referred to as real user monitoring or RUM).'
|
738
|
+
},
|
739
|
+
# Transaction events
|
740
|
+
:'transaction_events.enabled' => {
|
741
|
+
:default => true,
|
742
|
+
:public => true,
|
743
|
+
:type => Boolean,
|
744
|
+
:allowed_from_server => true,
|
745
|
+
:description => 'If `true`, enables transaction event sampling.'
|
746
|
+
},
|
747
|
+
:'transaction_events.max_samples_stored' => {
|
748
|
+
:default => 1200,
|
749
|
+
:public => true,
|
680
750
|
:type => Integer,
|
681
|
-
:dynamic_name => true,
|
682
751
|
:allowed_from_server => true,
|
683
|
-
:description => '
|
752
|
+
:description => 'Defines the maximum number of transaction events reported from a single harvest.'
|
684
753
|
},
|
685
|
-
|
754
|
+
# Application logging
|
755
|
+
:'application_logging.enabled' => {
|
686
756
|
:default => true,
|
687
|
-
:public =>
|
757
|
+
:public => true,
|
688
758
|
:type => Boolean,
|
689
|
-
:deprecated => true,
|
690
759
|
:allowed_from_server => false,
|
691
|
-
:description => '
|
760
|
+
:description => 'If `true`, enables log decoration and the collection of log events and metrics.'
|
692
761
|
},
|
693
|
-
:
|
694
|
-
:default =>
|
762
|
+
:'application_logging.forwarding.enabled' => {
|
763
|
+
:default => true,
|
695
764
|
:public => true,
|
696
765
|
:type => Boolean,
|
697
766
|
:allowed_from_server => false,
|
698
|
-
:description => '
|
699
|
-
'before shutting down to be installed regardless of detecting scenarios where it generally should not be. ' \
|
700
|
-
'Known use-case for this option is where Sinatra is running as an embedded service within another framework ' \
|
701
|
-
'and the agent is detecting the Sinatra app and skipping the `at_exit` handler as a result. Sinatra classically ' \
|
702
|
-
'runs the entire application in an `at_exit` block and would otherwise misbehave if the Agent\'s `at_exit` handler ' \
|
703
|
-
'was also installed in those circumstances. Note: `send_data_on_exit` should also be set to `true` in tandem with this setting.'
|
767
|
+
:description => 'If `true`, the agent captures log records emitted by your application.'
|
704
768
|
},
|
705
|
-
:
|
769
|
+
:'application_logging.forwarding.max_samples_stored' => {
|
770
|
+
:default => 10000,
|
771
|
+
:public => true,
|
772
|
+
:type => Integer,
|
773
|
+
:allowed_from_server => true,
|
774
|
+
:description => 'Defines the maximum number of log records to buffer in memory at a time.',
|
775
|
+
:dynamic_name => true
|
776
|
+
},
|
777
|
+
:'application_logging.local_decorating.enabled' => {
|
706
778
|
:default => false,
|
707
|
-
:public =>
|
779
|
+
:public => true,
|
708
780
|
:type => Boolean,
|
709
781
|
:allowed_from_server => false,
|
710
|
-
:description => '
|
782
|
+
:description => 'If `true`, the agent decorates logs with metadata to link to entities, hosts, traces, and spans.'
|
711
783
|
},
|
712
|
-
:
|
784
|
+
:'application_logging.metrics.enabled' => {
|
713
785
|
:default => true,
|
714
|
-
:public =>
|
786
|
+
:public => true,
|
787
|
+
:type => Boolean,
|
788
|
+
:allowed_from_server => true,
|
789
|
+
:description => 'If `true`, the agent captures metrics related to logging for your application.'
|
790
|
+
},
|
791
|
+
# Attributes
|
792
|
+
:'attributes.enabled' => {
|
793
|
+
:default => true,
|
794
|
+
:public => true,
|
715
795
|
:type => Boolean,
|
716
796
|
:allowed_from_server => false,
|
717
|
-
:description => '
|
797
|
+
:description => 'If `true`, enables capture of attributes for all destinations.'
|
718
798
|
},
|
719
|
-
:
|
720
|
-
:default =>
|
799
|
+
:'attributes.exclude' => {
|
800
|
+
:default => [],
|
721
801
|
:public => true,
|
722
|
-
:type =>
|
802
|
+
:type => Array,
|
723
803
|
:allowed_from_server => false,
|
724
|
-
:
|
804
|
+
:transform => DefaultSource.method(:convert_to_list),
|
805
|
+
:description => 'Prefix of attributes to exclude from all destinations. Allows `*` as wildcard at end.'
|
725
806
|
},
|
726
|
-
:
|
727
|
-
:default =>
|
807
|
+
:'attributes.include' => {
|
808
|
+
:default => [],
|
728
809
|
:public => true,
|
729
|
-
:type =>
|
810
|
+
:type => Array,
|
730
811
|
:allowed_from_server => false,
|
731
|
-
:
|
812
|
+
:transform => DefaultSource.method(:convert_to_list),
|
813
|
+
:description => 'Prefix of attributes to include in all destinations. Allows `*` as wildcard at end.'
|
732
814
|
},
|
733
|
-
:'
|
815
|
+
:'browser_monitoring.attributes.enabled' => {
|
734
816
|
:default => false,
|
735
817
|
:public => true,
|
736
818
|
:type => Boolean,
|
737
819
|
:allowed_from_server => false,
|
738
|
-
:description => 'If `true`,
|
820
|
+
:description => 'If `true`, the agent captures attributes from browser monitoring.'
|
739
821
|
},
|
740
|
-
:'
|
741
|
-
:default =>
|
822
|
+
:'browser_monitoring.attributes.exclude' => {
|
823
|
+
:default => [],
|
742
824
|
:public => true,
|
743
|
-
:type =>
|
825
|
+
:type => Array,
|
744
826
|
:allowed_from_server => false,
|
745
|
-
:
|
827
|
+
:transform => DefaultSource.method(:convert_to_list),
|
828
|
+
:description => 'Prefix of attributes to exclude from browser monitoring. Allows `*` as wildcard at end.'
|
746
829
|
},
|
747
|
-
:'
|
748
|
-
:default => [
|
830
|
+
:'browser_monitoring.attributes.include' => {
|
831
|
+
:default => [],
|
749
832
|
:public => true,
|
750
833
|
:type => Array,
|
751
834
|
:allowed_from_server => false,
|
752
|
-
:transform => DefaultSource.method(:
|
753
|
-
:description => '
|
835
|
+
:transform => DefaultSource.method(:convert_to_list),
|
836
|
+
:description => 'Prefix of attributes to include in browser monitoring. Allows `*` as wildcard at end.'
|
754
837
|
},
|
755
|
-
:
|
756
|
-
:default =>
|
838
|
+
:'error_collector.attributes.enabled' => {
|
839
|
+
:default => true,
|
757
840
|
:public => true,
|
758
841
|
:type => Boolean,
|
759
842
|
:allowed_from_server => false,
|
760
|
-
:description => 'If `true`,
|
843
|
+
:description => 'If `true`, the agent captures attributes from error collection.'
|
761
844
|
},
|
762
|
-
:
|
763
|
-
:default =>
|
845
|
+
:'error_collector.attributes.exclude' => {
|
846
|
+
:default => [],
|
764
847
|
:public => true,
|
765
|
-
:type =>
|
766
|
-
:deprecated => true,
|
848
|
+
:type => Array,
|
767
849
|
:allowed_from_server => false,
|
768
|
-
:
|
850
|
+
:transform => DefaultSource.method(:convert_to_list),
|
851
|
+
:description => 'Prefix of attributes to exclude from error collection. Allows `*` as wildcard at end.'
|
769
852
|
},
|
770
|
-
:
|
771
|
-
:default =>
|
853
|
+
:'error_collector.attributes.include' => {
|
854
|
+
:default => [],
|
772
855
|
:public => true,
|
773
|
-
:type =>
|
856
|
+
:type => Array,
|
774
857
|
:allowed_from_server => false,
|
775
|
-
:
|
858
|
+
:transform => DefaultSource.method(:convert_to_list),
|
859
|
+
:description => 'Prefix of attributes to include in error collection. Allows `*` as wildcard at end.'
|
776
860
|
},
|
777
|
-
:
|
778
|
-
:default =>
|
861
|
+
:'span_events.attributes.enabled' => {
|
862
|
+
:default => true,
|
779
863
|
:public => true,
|
780
|
-
:deprecated => true,
|
781
864
|
:type => Boolean,
|
782
865
|
:allowed_from_server => false,
|
783
|
-
:description =>
|
784
|
-
)
|
866
|
+
:description => 'If `true`, the agent captures attributes on span events.'
|
785
867
|
},
|
786
|
-
:
|
787
|
-
:default =>
|
868
|
+
:'span_events.attributes.exclude' => {
|
869
|
+
:default => [],
|
788
870
|
:public => true,
|
789
|
-
:type =>
|
790
|
-
:deprecated => true,
|
871
|
+
:type => Array,
|
791
872
|
:allowed_from_server => false,
|
792
|
-
:
|
873
|
+
:transform => DefaultSource.method(:convert_to_list),
|
874
|
+
:description => 'Prefix of attributes to exclude from span events. Allows `*` as wildcard at end.'
|
793
875
|
},
|
794
|
-
:
|
795
|
-
:default =>
|
876
|
+
:'span_events.attributes.include' => {
|
877
|
+
:default => [],
|
796
878
|
:public => true,
|
797
|
-
:type =>
|
879
|
+
:type => Array,
|
798
880
|
:allowed_from_server => false,
|
799
|
-
:
|
881
|
+
:transform => DefaultSource.method(:convert_to_list),
|
882
|
+
:description => 'Prefix of attributes to include on span events. Allows `*` as wildcard at end.'
|
800
883
|
},
|
801
|
-
:
|
802
|
-
:default =>
|
884
|
+
:'transaction_events.attributes.enabled' => {
|
885
|
+
:default => true,
|
803
886
|
:public => true,
|
804
887
|
:type => Boolean,
|
805
888
|
:allowed_from_server => false,
|
806
|
-
:description => 'If `true`,
|
807
|
-
},
|
808
|
-
:disable_harvest_thread => {
|
809
|
-
:default => false,
|
810
|
-
:public => false,
|
811
|
-
:type => Boolean,
|
812
|
-
:allowed_from_server => false,
|
813
|
-
:description => 'Enable or disable the harvest thread.'
|
814
|
-
},
|
815
|
-
:skip_ar_instrumentation => {
|
816
|
-
:default => false,
|
817
|
-
:public => false,
|
818
|
-
:type => Boolean,
|
819
|
-
:allowed_from_server => false,
|
820
|
-
:description => 'Enable or disable active record instrumentation.'
|
889
|
+
:description => 'If `true`, the agent captures attributes from transaction events.'
|
821
890
|
},
|
822
|
-
:
|
823
|
-
:default =>
|
891
|
+
:'transaction_events.attributes.exclude' => {
|
892
|
+
:default => [],
|
824
893
|
:public => true,
|
825
|
-
:type =>
|
894
|
+
:type => Array,
|
826
895
|
:allowed_from_server => false,
|
827
|
-
:
|
896
|
+
:transform => DefaultSource.method(:convert_to_list),
|
897
|
+
:description => 'Prefix of attributes to exclude from transaction events. Allows `*` as wildcard at end.'
|
828
898
|
},
|
829
|
-
:
|
830
|
-
:default =>
|
899
|
+
:'transaction_events.attributes.include' => {
|
900
|
+
:default => [],
|
831
901
|
:public => true,
|
832
|
-
:type =>
|
902
|
+
:type => Array,
|
833
903
|
:allowed_from_server => false,
|
834
|
-
:
|
904
|
+
:transform => DefaultSource.method(:convert_to_list),
|
905
|
+
:description => 'Prefix of attributes to include in transaction events. Allows `*` as wildcard at end.'
|
835
906
|
},
|
836
|
-
:
|
907
|
+
:'transaction_segments.attributes.enabled' => {
|
837
908
|
:default => true,
|
838
|
-
:public =>
|
909
|
+
:public => true,
|
839
910
|
:type => Boolean,
|
840
911
|
:allowed_from_server => false,
|
841
|
-
:
|
842
|
-
:description => deprecated_description(:'instrumentation.net_http',
|
843
|
-
'If `true`, uses `Module#prepend` rather than alias_method for Net::HTTP instrumentation.'
|
844
|
-
)
|
912
|
+
:description => 'If `true`, the agent captures attributes on transaction segments.'
|
845
913
|
},
|
846
|
-
:'
|
847
|
-
:default =>
|
914
|
+
:'transaction_segments.attributes.exclude' => {
|
915
|
+
:default => [],
|
848
916
|
:public => true,
|
849
|
-
:type =>
|
850
|
-
:dynamic_name => true,
|
917
|
+
:type => Array,
|
851
918
|
:allowed_from_server => false,
|
852
|
-
:
|
919
|
+
:transform => DefaultSource.method(:convert_to_list),
|
920
|
+
:description => 'Prefix of attributes to exclude from transaction segments. Allows `*` as wildcard at end.'
|
853
921
|
},
|
854
|
-
:'
|
855
|
-
:default =>
|
922
|
+
:'transaction_segments.attributes.include' => {
|
923
|
+
:default => [],
|
856
924
|
:public => true,
|
857
|
-
:type =>
|
858
|
-
:dynamic_name => true,
|
925
|
+
:type => Array,
|
859
926
|
:allowed_from_server => false,
|
860
|
-
:
|
927
|
+
:transform => DefaultSource.method(:convert_to_list),
|
928
|
+
:description => 'Prefix of attributes to include on transaction segments. Allows `*` as wildcard at end.'
|
861
929
|
},
|
862
|
-
:'
|
863
|
-
:default =>
|
930
|
+
:'transaction_tracer.attributes.enabled' => {
|
931
|
+
:default => true,
|
864
932
|
:public => true,
|
865
|
-
:type =>
|
866
|
-
:dynamic_name => true,
|
933
|
+
:type => Boolean,
|
867
934
|
:allowed_from_server => false,
|
868
|
-
:description => '
|
935
|
+
:description => 'If `true`, the agent captures attributes from transaction traces.'
|
869
936
|
},
|
870
|
-
:'
|
871
|
-
:default =>
|
937
|
+
:'transaction_tracer.attributes.exclude' => {
|
938
|
+
:default => [],
|
872
939
|
:public => true,
|
873
|
-
:type =>
|
874
|
-
:dynamic_name => true,
|
940
|
+
:type => Array,
|
875
941
|
:allowed_from_server => false,
|
876
|
-
:
|
942
|
+
:transform => DefaultSource.method(:convert_to_list),
|
943
|
+
:description => 'Prefix of attributes to exclude from transaction traces. Allows `*` as wildcard at end.'
|
877
944
|
},
|
878
|
-
:'
|
879
|
-
:default =>
|
945
|
+
:'transaction_tracer.attributes.include' => {
|
946
|
+
:default => [],
|
880
947
|
:public => true,
|
881
|
-
:type =>
|
882
|
-
:dynamic_name => true,
|
948
|
+
:type => Array,
|
883
949
|
:allowed_from_server => false,
|
884
|
-
:
|
950
|
+
:transform => DefaultSource.method(:convert_to_list),
|
951
|
+
:description => 'Prefix of attributes to include in transaction traces. Allows `*` as wildcard at end.'
|
885
952
|
},
|
886
|
-
|
887
|
-
|
953
|
+
# Audit log
|
954
|
+
:'audit_log.enabled' => {
|
955
|
+
:default => false,
|
888
956
|
:public => true,
|
889
|
-
:type =>
|
890
|
-
:dynamic_name => true,
|
891
|
-
:allowed_from_server => false,
|
892
|
-
:description => "Controls auto-instrumentation of Redis at start up. May be one of [auto|prepend|chain|disabled]."
|
893
|
-
},
|
894
|
-
:'instrumentation.rake' => {
|
895
|
-
:default => instrumentation_value_of(:disable_rake),
|
896
|
-
:public => :true,
|
897
|
-
:type => String,
|
898
|
-
:dynamic_name => true,
|
957
|
+
:type => Boolean,
|
899
958
|
:allowed_from_server => false,
|
900
|
-
:description =>
|
959
|
+
:description => 'If `true`, enables an audit log which logs communications with the New Relic [collector](/docs/using-new-relic/welcome-new-relic/get-started/glossary/#collector).'
|
901
960
|
},
|
902
|
-
:'
|
903
|
-
:default =>
|
904
|
-
:public =>
|
905
|
-
:type =>
|
906
|
-
:dynamic_name => true,
|
961
|
+
:'audit_log.endpoints' => {
|
962
|
+
:default => [".*"],
|
963
|
+
:public => true,
|
964
|
+
:type => Array,
|
907
965
|
:allowed_from_server => false,
|
908
|
-
:
|
966
|
+
:transform => DefaultSource.method(:convert_to_regexp_list),
|
967
|
+
:description => 'List of allowed endpoints to include in audit log'
|
909
968
|
},
|
910
|
-
:'
|
911
|
-
:default =>
|
969
|
+
:'audit_log.path' => {
|
970
|
+
:default => DefaultSource.audit_log_path,
|
971
|
+
:documentation_default => 'config/newrelic_audit.log',
|
912
972
|
:public => true,
|
913
973
|
:type => String,
|
914
|
-
:dynamic_name => true,
|
915
974
|
:allowed_from_server => false,
|
916
|
-
:description => '
|
975
|
+
:description => 'Specifies a path to the audit log file (including the filename).'
|
917
976
|
},
|
918
|
-
|
919
|
-
|
977
|
+
# Autostart
|
978
|
+
:'autostart.denylisted_constants' => {
|
979
|
+
:default => 'Rails::Console',
|
920
980
|
:public => true,
|
921
981
|
:type => String,
|
922
|
-
:dynamic_name => true,
|
923
982
|
:allowed_from_server => false,
|
924
|
-
:description =>
|
983
|
+
:description => 'Specify a list of constants that should prevent the agent from starting automatically. Separate individual constants with a comma `,`. For example, `Rails::Console,UninstrumentedBackgroundJob`.'
|
925
984
|
},
|
926
|
-
:'
|
927
|
-
:default =>
|
985
|
+
:'autostart.denylisted_executables' => {
|
986
|
+
:default => 'irb,rspec',
|
928
987
|
:public => true,
|
929
988
|
:type => String,
|
930
|
-
:dynamic_name => true,
|
931
989
|
:allowed_from_server => false,
|
932
|
-
:description => '
|
990
|
+
:description => 'Defines a comma-delimited list of executables that the agent should not instrument. For example, `rake,my_ruby_script.rb`.'
|
933
991
|
},
|
934
|
-
:'
|
935
|
-
:default =>
|
936
|
-
:public =>
|
992
|
+
:'autostart.denylisted_rake_tasks' => {
|
993
|
+
:default => AUTOSTART_DENYLISTED_RAKE_TASKS,
|
994
|
+
:public => true,
|
937
995
|
:type => String,
|
938
|
-
:dynamic_name => true,
|
939
|
-
:allowed_from_server => false,
|
940
|
-
:description => "Controls auto-instrumentation of Sinatra at start up. May be one of [auto|prepend|chain|disabled]."
|
941
|
-
},
|
942
|
-
:'instrumentation.rack' => {
|
943
|
-
:default => instrumentation_value_of(:disable_rack),
|
944
|
-
:public => true,
|
945
|
-
:type => String,
|
946
|
-
:dynamic_name => true,
|
947
|
-
:allowed_from_server => false,
|
948
|
-
:description => "Controls auto-instrumentation of Rack. When enabled, the agent hooks into the " \
|
949
|
-
"`to_app` method in Rack::Builder to find gems to instrument during " \
|
950
|
-
"application startup. May be one of [auto|prepend|chain|disabled]."
|
951
|
-
},
|
952
|
-
:'instrumentation.rack_urlmap' => {
|
953
|
-
:default => instrumentation_value_of(:disable_rack_urlmap),
|
954
|
-
:public => true,
|
955
|
-
:type => String,
|
956
|
-
:dynamic_name => true,
|
957
|
-
:allowed_from_server => false,
|
958
|
-
:description => 'Controls auto-instrumentation of Rack::URLMap at start up. May be one of [auto|prepend|chain|disabled].'
|
959
|
-
},
|
960
|
-
:'instrumentation.puma_rack' => {
|
961
|
-
:default => instrumentation_value_of(:disable_puma_rack), # TODO: change to value_of(:'instrumentation.rack') when we remove :disable_puma_rack in 8.0)
|
962
|
-
:public => true,
|
963
|
-
:type => String,
|
964
|
-
:dynamic_name => true,
|
965
|
-
:allowed_from_server => false,
|
966
|
-
:description => "Controls auto-instrumentation of Puma::Rack. When enabled, the agent hooks into the " \
|
967
|
-
"`to_app` method in Puma::Rack::Builder to find gems to instrument during " \
|
968
|
-
"application startup. May be one of [auto|prepend|chain|disabled]."
|
969
|
-
},
|
970
|
-
:'instrumentation.puma_rack_urlmap' => {
|
971
|
-
:default => instrumentation_value_of(:disable_puma_rack_urlmap), # TODO: change to value_of(:'instrumentation.rack_urlmap') when we remove :disable_puma_rack_urlmap in 8.0)
|
972
|
-
:public => true,
|
973
|
-
:type => String,
|
974
|
-
:dynamic_name => true,
|
975
996
|
:allowed_from_server => false,
|
976
|
-
:description
|
997
|
+
:description => 'Defines a comma-delimited list of Rake tasks that the agent should not instrument. For example, `assets:precompile,db:migrate`.'
|
977
998
|
},
|
978
|
-
|
979
|
-
|
999
|
+
# Code level metrics
|
1000
|
+
:'code_level_metrics.enabled' => {
|
1001
|
+
:default => true,
|
980
1002
|
:public => true,
|
981
|
-
:type =>
|
982
|
-
:
|
983
|
-
:
|
984
|
-
|
1003
|
+
:type => Boolean,
|
1004
|
+
:allowed_from_server => true,
|
1005
|
+
:description => "If `true`, the agent will report source code level metrics for traced methods.\nsee: " \
|
1006
|
+
'https://docs.newrelic.com/docs/apm/agents/ruby-agent/features/ruby-codestream-integration/'
|
985
1007
|
},
|
986
|
-
|
987
|
-
|
1008
|
+
# Cross application tracer
|
1009
|
+
:"cross_application_tracer.enabled" => {
|
1010
|
+
:default => false,
|
988
1011
|
:public => true,
|
989
|
-
:type =>
|
990
|
-
:
|
991
|
-
:
|
992
|
-
:description
|
1012
|
+
:type => Boolean,
|
1013
|
+
:allowed_from_server => true,
|
1014
|
+
:deprecated => true,
|
1015
|
+
:description => deprecated_description(
|
1016
|
+
:'distributed_tracing-enabled',
|
1017
|
+
'If `true`, enables [cross-application tracing](/docs/agents/ruby-agent/features/cross-application-tracing-ruby/) when `distributed_tracing.enabled` is set to `false`.'
|
1018
|
+
)
|
993
1019
|
},
|
994
|
-
|
995
|
-
|
1020
|
+
# Custom attributes
|
1021
|
+
:'custom_attributes.enabled' => {
|
1022
|
+
:default => true,
|
996
1023
|
:public => true,
|
997
|
-
:type =>
|
998
|
-
:dynamic_name => true,
|
1024
|
+
:type => Boolean,
|
999
1025
|
:allowed_from_server => false,
|
1000
|
-
:description
|
1026
|
+
:description => 'If `false`, custom attributes will not be sent on events.'
|
1001
1027
|
},
|
1002
|
-
|
1003
|
-
|
1028
|
+
# Custom events
|
1029
|
+
:'custom_insights_events.enabled' => {
|
1030
|
+
:default => true,
|
1004
1031
|
:public => true,
|
1005
|
-
:type =>
|
1006
|
-
:
|
1007
|
-
:
|
1008
|
-
:description => 'Controls auto-instrumentation of Ruby standard library Logger at start up. May be one of [auto|prepend|chain|disabled].'
|
1032
|
+
:type => Boolean,
|
1033
|
+
:allowed_from_server => true,
|
1034
|
+
:description => 'If `true`, the agent captures [custom events](/docs/insights/new-relic-insights/adding-querying-data/inserting-custom-events-new-relic-apm-agents).'
|
1009
1035
|
},
|
1010
|
-
:'
|
1011
|
-
:default =>
|
1036
|
+
:'custom_insights_events.max_samples_stored' => {
|
1037
|
+
:default => 3000,
|
1012
1038
|
:public => true,
|
1013
|
-
:type =>
|
1014
|
-
:
|
1015
|
-
:
|
1016
|
-
:
|
1039
|
+
:type => Integer,
|
1040
|
+
:allowed_from_server => true,
|
1041
|
+
:description => 'Specify a maximum number of custom events to buffer in memory at a time.',
|
1042
|
+
:dynamic_name => true
|
1017
1043
|
},
|
1018
|
-
|
1019
|
-
|
1044
|
+
# Datastore tracer
|
1045
|
+
:'datastore_tracer.database_name_reporting.enabled' => {
|
1046
|
+
:default => true,
|
1020
1047
|
:public => true,
|
1021
1048
|
:type => Boolean,
|
1022
1049
|
:allowed_from_server => false,
|
1023
|
-
:description => 'If `
|
1050
|
+
:description => 'If `false`, the agent will not add `database_name` parameter to transaction or slow sql traces.'
|
1024
1051
|
},
|
1025
|
-
:
|
1026
|
-
:default =>
|
1052
|
+
:'datastore_tracer.instance_reporting.enabled' => {
|
1053
|
+
:default => true,
|
1027
1054
|
:public => true,
|
1028
1055
|
:type => Boolean,
|
1029
|
-
:dynamic_name => true,
|
1030
1056
|
:allowed_from_server => false,
|
1031
|
-
:description => 'If `
|
1057
|
+
:description => 'If `false`, the agent will not report datastore instance metrics, nor add `host` or `port_path_or_id` parameters to transaction or slow SQL traces.'
|
1032
1058
|
},
|
1059
|
+
# Disabling
|
1033
1060
|
:disable_action_cable_instrumentation => {
|
1034
1061
|
:default => false,
|
1035
1062
|
:public => true,
|
1036
1063
|
:type => Boolean,
|
1037
|
-
:dynamic_name => true,
|
1038
1064
|
:allowed_from_server => false,
|
1039
1065
|
:description => 'If `true`, disables Action Cable instrumentation.'
|
1040
1066
|
},
|
1041
|
-
:
|
1042
|
-
|
1043
|
-
|
1067
|
+
# TODO: by subscribing to process_middleware.action_dispatch events,
|
1068
|
+
# we duplicate the efforts already performed by non-notifications
|
1069
|
+
# based instrumentation. In future, we ought to determine the
|
1070
|
+
# extent of the overlap and duplication and end up with only this
|
1071
|
+
# notifications based approach existing and the monkey patching
|
1072
|
+
# approach removed entirely. NOTE that we will likely not want to
|
1073
|
+
# do so until we are okay with dropping support for Rails < v6,
|
1074
|
+
# given that these events are available only for v6+.
|
1075
|
+
:disable_action_dispatch => {
|
1076
|
+
:default => true,
|
1077
|
+
:public => false,
|
1044
1078
|
:type => Boolean,
|
1045
|
-
:dynamic_name => true,
|
1046
1079
|
:allowed_from_server => false,
|
1047
|
-
:description => 'If `true`, disables
|
1080
|
+
:description => 'If `true`, disables Action Dispatch instrumentation.'
|
1048
1081
|
},
|
1049
|
-
:
|
1050
|
-
:default =>
|
1082
|
+
:disable_action_controller => {
|
1083
|
+
:default => false,
|
1051
1084
|
:public => true,
|
1052
1085
|
:type => Boolean,
|
1053
|
-
:deprecated => true,
|
1054
1086
|
:allowed_from_server => false,
|
1055
|
-
:description =>
|
1087
|
+
:description => 'If `true`, disables Action Controller instrumentation.'
|
1056
1088
|
},
|
1057
|
-
:
|
1058
|
-
:default =>
|
1089
|
+
:disable_action_mailbox => {
|
1090
|
+
:default => false,
|
1059
1091
|
:public => true,
|
1060
1092
|
:type => Boolean,
|
1061
|
-
:deprecated => true,
|
1062
1093
|
:allowed_from_server => false,
|
1063
|
-
:description =>
|
1094
|
+
:description => 'If `true`, disables Action Mailbox instrumentation.'
|
1064
1095
|
},
|
1065
|
-
:
|
1066
|
-
:default =>
|
1096
|
+
:disable_action_mailer => {
|
1097
|
+
:default => false,
|
1067
1098
|
:public => true,
|
1068
1099
|
:type => Boolean,
|
1069
|
-
:deprecated => true,
|
1070
1100
|
:allowed_from_server => false,
|
1071
|
-
:description =>
|
1101
|
+
:description => 'If `true`, disables Action Mailer instrumentation.'
|
1072
1102
|
},
|
1073
|
-
:
|
1074
|
-
:default =>
|
1103
|
+
:disable_activejob => {
|
1104
|
+
:default => false,
|
1075
1105
|
:public => true,
|
1076
1106
|
:type => Boolean,
|
1077
|
-
:deprecated => true,
|
1078
1107
|
:allowed_from_server => false,
|
1079
|
-
:description =>
|
1108
|
+
:description => 'If `true`, disables Active Job instrumentation.'
|
1080
1109
|
},
|
1081
|
-
:
|
1110
|
+
:disable_active_storage => {
|
1082
1111
|
:default => false,
|
1083
1112
|
:public => true,
|
1084
1113
|
:type => Boolean,
|
1085
|
-
:deprecated => true,
|
1086
1114
|
:allowed_from_server => false,
|
1087
|
-
:description =>
|
1115
|
+
:description => 'If `true`, disables Active Storage instrumentation.'
|
1088
1116
|
},
|
1089
|
-
:
|
1117
|
+
:disable_active_support => {
|
1090
1118
|
:default => false,
|
1091
1119
|
:public => true,
|
1092
1120
|
:type => Boolean,
|
1093
1121
|
:allowed_from_server => false,
|
1094
|
-
:description => 'If `true`, disables
|
1122
|
+
:description => 'If `true`, disables Active Support instrumentation.'
|
1095
1123
|
},
|
1096
|
-
:
|
1097
|
-
:default =>
|
1124
|
+
:disable_activerecord_instrumentation => {
|
1125
|
+
:default => value_of(:skip_ar_instrumentation),
|
1126
|
+
:documentation_default => false,
|
1098
1127
|
:public => true,
|
1099
1128
|
:type => Boolean,
|
1100
1129
|
:allowed_from_server => false,
|
1101
|
-
:
|
1102
|
-
:deprecated => true,
|
1103
|
-
:description => 'If `true`, enables the capture of job arguments for transaction traces and traced errors in Sidekiq.'
|
1130
|
+
:description => 'If `true`, disables Active Record instrumentation.'
|
1104
1131
|
},
|
1105
|
-
:
|
1132
|
+
:disable_active_record_notifications => {
|
1106
1133
|
:default => false,
|
1107
1134
|
:public => true,
|
1108
1135
|
:type => Boolean,
|
1109
|
-
:allowed_from_server => false,
|
1110
1136
|
:dynamic_name => true,
|
1111
|
-
:deprecated => true,
|
1112
|
-
:description => 'If `true`, enables the capture of job arguments for transaction traces and traced errors in Resque.'
|
1113
|
-
},
|
1114
|
-
:'resque.use_ruby_dns' => {
|
1115
|
-
:default => true,
|
1116
|
-
:public => false,
|
1117
|
-
:type => Boolean,
|
1118
1137
|
:allowed_from_server => false,
|
1119
|
-
:description => '
|
1138
|
+
:description => 'If `true`, disables instrumentation for Active Record 4+'
|
1120
1139
|
},
|
1121
|
-
:
|
1140
|
+
:disable_cpu_sampler => {
|
1122
1141
|
:default => false,
|
1123
1142
|
:public => true,
|
1124
1143
|
:type => Boolean,
|
1125
|
-
:
|
1126
|
-
:
|
1144
|
+
:dynamic_name => true,
|
1145
|
+
:allowed_from_server => false,
|
1146
|
+
:description => 'If `true`, the agent won\'t sample the CPU usage of the host process.'
|
1127
1147
|
},
|
1128
|
-
:
|
1129
|
-
:default =>
|
1148
|
+
:disable_delayed_job_sampler => {
|
1149
|
+
:default => false,
|
1130
1150
|
:public => true,
|
1131
1151
|
:type => Boolean,
|
1132
|
-
:
|
1133
|
-
:
|
1134
|
-
|
1135
|
-
:'transaction_tracer.transaction_threshold' => {
|
1136
|
-
:default => DefaultSource.transaction_tracer_transaction_threshold,
|
1137
|
-
:public => true,
|
1138
|
-
:type => Float,
|
1139
|
-
:allowed_from_server => true,
|
1140
|
-
:description => 'Specify a threshold in seconds. Transactions with a duration longer than this threshold are eligible for transaction traces. Specify a float value or the string `apdex_f`.'
|
1141
|
-
},
|
1142
|
-
:'transaction_tracer.record_sql' => {
|
1143
|
-
:default => 'obfuscated',
|
1144
|
-
:public => true,
|
1145
|
-
:type => String,
|
1146
|
-
:allowed_from_server => true,
|
1147
|
-
:description => 'Obfuscation level for SQL queries reported in transaction trace nodes.
|
1148
|
-
|
1149
|
-
By default, this is set to `obfuscated`, which strips out the numeric and string literals.
|
1150
|
-
|
1151
|
-
<ul>
|
1152
|
-
<li>If you do not want the agent to capture query information, set this to `none`.</li>
|
1153
|
-
<li>If you want the agent to capture all query information in its original form, set this to `raw`.</li>
|
1154
|
-
<li>When you enable [high security mode](/docs/agents/manage-apm-agents/configuration/high-security-mode), this is automatically set to `obfuscated`.</li>
|
1155
|
-
</ul>
|
1156
|
-
'
|
1152
|
+
:dynamic_name => true,
|
1153
|
+
:allowed_from_server => false,
|
1154
|
+
:description => 'If `true`, the agent won\'t measure the depth of Delayed Job queues.'
|
1157
1155
|
},
|
1158
|
-
:
|
1156
|
+
:disable_gc_profiler => {
|
1159
1157
|
:default => false,
|
1160
1158
|
:public => true,
|
1161
1159
|
:type => Boolean,
|
1162
1160
|
:allowed_from_server => false,
|
1163
|
-
:description => 'If `true`, the
|
1161
|
+
:description => 'If `true`, disables the use of GC::Profiler to measure time spent in garbage collection'
|
1164
1162
|
},
|
1165
|
-
:
|
1166
|
-
:default =>
|
1163
|
+
:disable_memory_sampler => {
|
1164
|
+
:default => false,
|
1167
1165
|
:public => true,
|
1168
1166
|
:type => Boolean,
|
1169
|
-
:
|
1167
|
+
:dynamic_name => true,
|
1170
1168
|
:allowed_from_server => false,
|
1171
|
-
:description => '
|
1172
|
-
},
|
1173
|
-
:'transaction_tracer.explain_threshold' => {
|
1174
|
-
:default => 0.5,
|
1175
|
-
:public => true,
|
1176
|
-
:type => Float,
|
1177
|
-
:allowed_from_server => true,
|
1178
|
-
:description => 'Threshold (in seconds) above which the agent will collect explain plans. Relevant only when [`explain_enabled`](#transaction_tracer.explain_enabled) is true.'
|
1169
|
+
:description => 'If `true`, the agent won\'t sample the memory usage of the host process.'
|
1179
1170
|
},
|
1180
|
-
:
|
1181
|
-
:default =>
|
1171
|
+
:disable_middleware_instrumentation => {
|
1172
|
+
:default => false,
|
1182
1173
|
:public => true,
|
1183
1174
|
:type => Boolean,
|
1184
|
-
:allowed_from_server =>
|
1185
|
-
:description => 'If `true`,
|
1186
|
-
},
|
1187
|
-
:'transaction_tracer.stack_trace_threshold' => {
|
1188
|
-
:default => 0.5,
|
1189
|
-
:public => true,
|
1190
|
-
:type => Float,
|
1191
|
-
:allowed_from_server => true,
|
1192
|
-
:description => 'Specify a threshold in seconds. The agent includes stack traces in transaction trace nodes when the stack trace duration exceeds this threshold.'
|
1175
|
+
:allowed_from_server => false,
|
1176
|
+
:description => 'If `true`, the agent won\'t wrap third-party middlewares in instrumentation (regardless of whether they are installed via Rack::Builder or Rails).'
|
1193
1177
|
},
|
1194
|
-
:
|
1195
|
-
:default =>
|
1178
|
+
:disable_samplers => {
|
1179
|
+
:default => false,
|
1196
1180
|
:public => true,
|
1197
|
-
:type =>
|
1198
|
-
:allowed_from_server =>
|
1199
|
-
:description => '
|
1181
|
+
:type => Boolean,
|
1182
|
+
:allowed_from_server => false,
|
1183
|
+
:description => 'If `true`, disables the collection of sampler metrics. Sampler metrics are metrics that are not event-based (such as CPU time or memory usage).'
|
1200
1184
|
},
|
1201
1185
|
:disable_sequel_instrumentation => {
|
1202
1186
|
:default => false,
|
@@ -1205,963 +1189,937 @@ module NewRelic
|
|
1205
1189
|
:allowed_from_server => false,
|
1206
1190
|
:description => 'If `true`, disables [Sequel instrumentation](/docs/agents/ruby-agent/frameworks/sequel-instrumentation).'
|
1207
1191
|
},
|
1208
|
-
:
|
1192
|
+
:disable_sidekiq => {
|
1209
1193
|
:default => false,
|
1210
1194
|
:public => true,
|
1211
1195
|
:type => Boolean,
|
1212
1196
|
:allowed_from_server => false,
|
1213
|
-
:
|
1214
|
-
:description => 'Use [`disable_sequel_instrumentation`](#disable_sequel_instrumentation) instead.'
|
1215
|
-
},
|
1216
|
-
:disable_mongo => {
|
1217
|
-
:default => false,
|
1218
|
-
:public => true,
|
1219
|
-
:type => Boolean,
|
1220
|
-
:allowed_from_server => false,
|
1221
|
-
:dynamic_name => true,
|
1222
|
-
:deprecated => true,
|
1223
|
-
:description => deprecated_description(:'instrumentation.mongo', 'If `true`, the agent won\'t install [instrumentation for the Mongo gem](/docs/agents/ruby-agent/frameworks/mongo-instrumentation).')
|
1224
|
-
},
|
1225
|
-
:disable_redis => {
|
1226
|
-
:default => false,
|
1227
|
-
:public => true,
|
1228
|
-
:type => Boolean,
|
1229
|
-
:deprecated => true,
|
1230
|
-
:allowed_from_server => false,
|
1231
|
-
:description => deprecated_description(:'instrumentation.redis', 'If `true`, the agent won\'t install [instrumentation for Redis](/docs/agents/ruby-agent/frameworks/redis-instrumentation).')
|
1232
|
-
},
|
1233
|
-
:disable_redis_instrumentation => {
|
1234
|
-
:default => false,
|
1235
|
-
:public => false,
|
1236
|
-
:type => Boolean,
|
1237
|
-
:deprecated => true,
|
1238
|
-
:allowed_from_server => false,
|
1239
|
-
:description => deprecated_description(:'instrumentation.redis', 'Disables installation of Redis instrumentation. Standard key to use is disable_redis.')
|
1240
|
-
},
|
1241
|
-
:'message_tracer.segment_parameters.enabled' => {
|
1242
|
-
:default => true,
|
1243
|
-
:public => true,
|
1244
|
-
:type => Boolean,
|
1245
|
-
:allowed_from_server => true,
|
1246
|
-
:description => 'If `true`, the agent will collect metadata about messages and attach them as segment parameters.'
|
1197
|
+
:description => 'If `true`, disables [Sidekiq instrumentation](/docs/agents/ruby-agent/background-jobs/sidekiq-instrumentation).'
|
1247
1198
|
},
|
1248
|
-
:
|
1249
|
-
:default =>
|
1199
|
+
:disable_sinatra_auto_middleware => {
|
1200
|
+
:default => false,
|
1250
1201
|
:public => true,
|
1251
1202
|
:type => Boolean,
|
1252
|
-
:allowed_from_server =>
|
1253
|
-
:description =>
|
1254
|
-
|
1255
|
-
|
1256
|
-
|
1257
|
-
|
1258
|
-
|
1259
|
-
|
1260
|
-
|
1203
|
+
:allowed_from_server => false,
|
1204
|
+
:description => <<~DESCRIPTION
|
1205
|
+
If `true`, disables agent middleware for Sinatra. This middleware is responsible for advanced feature support such as [cross application tracing](/docs/apm/transactions/cross-application-traces/cross-application-tracing), [page load timing](/docs/browser/new-relic-browser/getting-started/new-relic-browser), and [error collection](/docs/apm/applications-menu/events/view-apm-error-analytics).
|
1206
|
+
|
1207
|
+
<Callout variant="important">
|
1208
|
+
Cross application tracing is deprecated in favor of [distributed tracing](/docs/apm/distributed-tracing/getting-started/introduction-distributed-tracing). Distributed tracing is on by default for Ruby agent versions 8.0.0 and above. Middlewares are not required to support distributed tracing.
|
1209
|
+
|
1210
|
+
To continue using cross application tracing, update the following options in your `newrelic.yml` configuration file:
|
1211
|
+
|
1212
|
+
```
|
1213
|
+
# newrelic.yml
|
1214
|
+
|
1215
|
+
cross_application_tracer:
|
1216
|
+
enabled: true
|
1217
|
+
distributed_tracing:
|
1218
|
+
enabled: false
|
1219
|
+
```
|
1220
|
+
</Callout>
|
1221
|
+
DESCRIPTION
|
1261
1222
|
},
|
1262
|
-
:
|
1263
|
-
:default =>
|
1223
|
+
:disable_view_instrumentation => {
|
1224
|
+
:default => false,
|
1264
1225
|
:public => true,
|
1265
1226
|
:type => Boolean,
|
1266
|
-
:allowed_from_server =>
|
1267
|
-
:description => 'If `true`,
|
1268
|
-
},
|
1269
|
-
:'slow_sql.record_sql' => {
|
1270
|
-
:default => value_of(:'transaction_tracer.record_sql'),
|
1271
|
-
:public => true,
|
1272
|
-
:type => String,
|
1273
|
-
:allowed_from_server => true,
|
1274
|
-
:description => 'Defines an obfuscation level for slow SQL queries. Valid options are `obfuscated`, `raw`, or `none`).'
|
1227
|
+
:allowed_from_server => false,
|
1228
|
+
:description => 'If `true`, disables view instrumentation.'
|
1275
1229
|
},
|
1276
|
-
:
|
1230
|
+
:disable_vm_sampler => {
|
1277
1231
|
:default => false,
|
1278
1232
|
:public => true,
|
1279
1233
|
:type => Boolean,
|
1280
|
-
:
|
1281
|
-
:
|
1234
|
+
:dynamic_name => true,
|
1235
|
+
:allowed_from_server => false,
|
1236
|
+
:description => 'If `true`, the agent won\'t [sample performance measurements from the Ruby VM](/docs/agents/ruby-agent/features/ruby-vm-measurements).'
|
1282
1237
|
},
|
1283
|
-
|
1238
|
+
# Distributed tracing
|
1239
|
+
:'distributed_tracing.enabled' => {
|
1284
1240
|
:default => true,
|
1285
1241
|
:public => true,
|
1286
1242
|
:type => Boolean,
|
1287
1243
|
:allowed_from_server => true,
|
1288
|
-
:description => '
|
1244
|
+
:description => 'Distributed tracing lets you see the path that a request takes through your distributed system. Enabling distributed tracing changes the behavior of some New Relic features, so carefully consult the [transition guide](/docs/transition-guide-distributed-tracing) before you enable this feature.'
|
1289
1245
|
},
|
1290
|
-
|
1246
|
+
# Elasticsearch
|
1247
|
+
:'elasticsearch.capture_queries' => {
|
1291
1248
|
:default => true,
|
1292
1249
|
:public => true,
|
1293
1250
|
:type => Boolean,
|
1294
1251
|
:allowed_from_server => true,
|
1295
|
-
:description => 'If `true`, the agent
|
1252
|
+
:description => 'If `true`, the agent captures Elasticsearch queries in transaction traces.'
|
1296
1253
|
},
|
1297
|
-
:'
|
1254
|
+
:'elasticsearch.obfuscate_queries' => {
|
1298
1255
|
:default => true,
|
1299
1256
|
:public => true,
|
1300
1257
|
:type => Boolean,
|
1301
1258
|
:allowed_from_server => true,
|
1302
|
-
:description => 'If `true`, the agent
|
1259
|
+
:description => 'If `true`, the agent obfuscates Elasticsearch queries in transaction traces.'
|
1303
1260
|
},
|
1304
|
-
|
1261
|
+
# Heroku
|
1262
|
+
:'heroku.use_dyno_names' => {
|
1305
1263
|
:default => true,
|
1306
1264
|
:public => true,
|
1307
1265
|
:type => Boolean,
|
1308
|
-
:deprecated => true,
|
1309
1266
|
:allowed_from_server => false,
|
1310
|
-
:description => '
|
1267
|
+
:description => 'If `true`, the agent uses Heroku dyno names as the hostname.'
|
1268
|
+
},
|
1269
|
+
:'heroku.dyno_name_prefixes_to_shorten' => {
|
1270
|
+
:default => %w[scheduler run],
|
1271
|
+
:public => true,
|
1272
|
+
:type => Array,
|
1273
|
+
:allowed_from_server => false,
|
1274
|
+
:transform => DefaultSource.method(:convert_to_list),
|
1275
|
+
:description => 'Ordinarily the agent reports dyno names with a trailing dot and process ID (for example, <b>worker.3</b>). You can remove this trailing data by specifying the prefixes you want to report without trailing data (for example, <b>worker</b>).'
|
1311
1276
|
},
|
1312
|
-
|
1313
|
-
|
1277
|
+
# Infinite tracing
|
1278
|
+
:'infinite_tracing.trace_observer.host' => {
|
1279
|
+
:default => '',
|
1314
1280
|
:public => true,
|
1315
1281
|
:type => String,
|
1316
|
-
:
|
1317
|
-
:
|
1282
|
+
:allowed_from_server => false,
|
1283
|
+
:external => :infinite_tracing,
|
1284
|
+
:description => "Configures the hostname for the trace observer Host. " \
|
1285
|
+
"When configured, enables tail-based sampling by sending all recorded spans " \
|
1286
|
+
"to a trace observer for further sampling decisions, irrespective of any usual " \
|
1287
|
+
"agent sampling decision."
|
1288
|
+
},
|
1289
|
+
:'infinite_tracing.trace_observer.port' => {
|
1290
|
+
:default => 443,
|
1291
|
+
:public => true,
|
1292
|
+
:type => Integer,
|
1293
|
+
:allowed_from_server => false,
|
1294
|
+
:external => :infinite_tracing,
|
1295
|
+
:description => "Configures the TCP/IP port for the trace observer Host"
|
1296
|
+
},
|
1297
|
+
# Instrumentation
|
1298
|
+
:'instrumentation.active_support_logger' => {
|
1299
|
+
:default => instrumentation_value_from_boolean(:'application_logging.enabled'),
|
1300
|
+
:documentation_default => 'auto',
|
1318
1301
|
:dynamic_name => true,
|
1319
|
-
:
|
1302
|
+
:public => true,
|
1303
|
+
:type => String,
|
1304
|
+
:allowed_from_server => false,
|
1305
|
+
:description => 'Controls auto-instrumentation of ActiveSupport::Logger at start up. May be one of [auto|prepend|chain|disabled].'
|
1320
1306
|
},
|
1321
|
-
:'
|
1322
|
-
:default =>
|
1307
|
+
:'instrumentation.bunny' => {
|
1308
|
+
:default => 'auto',
|
1323
1309
|
:public => true,
|
1324
|
-
:type =>
|
1325
|
-
:allowed_from_server => true,
|
1310
|
+
:type => String,
|
1326
1311
|
:dynamic_name => true,
|
1327
|
-
:
|
1312
|
+
:allowed_from_server => false,
|
1313
|
+
:description => 'Controls auto-instrumentation of bunny at start up. May be one of [auto|prepend|chain|disabled].'
|
1328
1314
|
},
|
1329
|
-
:'
|
1330
|
-
:default =>
|
1315
|
+
:'instrumentation.fiber' => {
|
1316
|
+
:default => 'auto',
|
1331
1317
|
:public => true,
|
1332
|
-
:type =>
|
1333
|
-
:allowed_from_server => true,
|
1318
|
+
:type => String,
|
1334
1319
|
:dynamic_name => true,
|
1335
|
-
:
|
1320
|
+
:allowed_from_server => false,
|
1321
|
+
:description => 'Controls auto-instrumentation of the Fiber class at start up. May be one of [auto|prepend|chain|disabled].'
|
1336
1322
|
},
|
1337
|
-
:'
|
1338
|
-
:default => '',
|
1323
|
+
:'instrumentation.concurrent_ruby' => {
|
1324
|
+
:default => 'auto',
|
1339
1325
|
:public => true,
|
1340
1326
|
:type => String,
|
1341
|
-
:allowed_from_server => true,
|
1342
1327
|
:dynamic_name => true,
|
1343
|
-
:
|
1328
|
+
:allowed_from_server => false,
|
1329
|
+
:description => 'Controls auto-instrumentation of the concurrent-ruby library at start up. May be one of [auto|prepend|chain|disabled].'
|
1344
1330
|
},
|
1345
|
-
:'
|
1346
|
-
:default =>
|
1331
|
+
:'instrumentation.curb' => {
|
1332
|
+
:default => 'auto',
|
1333
|
+
:documentation_default => 'auto',
|
1347
1334
|
:public => true,
|
1348
|
-
:type =>
|
1349
|
-
:allowed_from_server => true,
|
1335
|
+
:type => String,
|
1350
1336
|
:dynamic_name => true,
|
1351
|
-
:
|
1337
|
+
:allowed_from_server => false,
|
1338
|
+
:description => 'Controls auto-instrumentation of Curb at start up. May be one of [auto|prepend|chain|disabled].'
|
1352
1339
|
},
|
1353
|
-
:'
|
1354
|
-
:default =>
|
1340
|
+
:'instrumentation.delayed_job' => {
|
1341
|
+
:default => 'auto',
|
1342
|
+
:documentation_default => 'auto',
|
1355
1343
|
:public => true,
|
1356
|
-
:type =>
|
1357
|
-
:allowed_from_server => true,
|
1344
|
+
:type => String,
|
1358
1345
|
:dynamic_name => true,
|
1359
|
-
:
|
1346
|
+
:allowed_from_server => false,
|
1347
|
+
:description => 'Controls auto-instrumentation of Delayed Job at start up. May be one of [auto|prepend|chain|disabled].'
|
1360
1348
|
},
|
1361
|
-
:'
|
1362
|
-
:default => '',
|
1349
|
+
:'instrumentation.elasticsearch' => {
|
1350
|
+
:default => 'auto',
|
1363
1351
|
:public => true,
|
1364
1352
|
:type => String,
|
1365
|
-
:allowed_from_server => true,
|
1366
1353
|
:dynamic_name => true,
|
1367
|
-
:
|
1354
|
+
:allowed_from_server => false,
|
1355
|
+
:description => 'Controls auto-instrumentation of the elasticsearch library at start up. May be one of [auto|prepend|chain|disabled].'
|
1368
1356
|
},
|
1369
|
-
:'
|
1370
|
-
:default =>
|
1357
|
+
:'instrumentation.excon' => {
|
1358
|
+
:default => 'enabled',
|
1359
|
+
:documentation_default => 'enabled',
|
1371
1360
|
:public => true,
|
1372
|
-
:type =>
|
1361
|
+
:type => String,
|
1362
|
+
:dynamic_name => true,
|
1373
1363
|
:allowed_from_server => false,
|
1374
|
-
:description =>
|
1364
|
+
:description => "Controls auto-instrumentation of Excon at start up. May be one of [enabled|disabled]."
|
1375
1365
|
},
|
1376
|
-
:'
|
1377
|
-
:default =>
|
1366
|
+
:'instrumentation.grape' => {
|
1367
|
+
:default => 'auto',
|
1378
1368
|
:public => true,
|
1379
|
-
:type =>
|
1380
|
-
:allowed_from_server => true,
|
1369
|
+
:type => String,
|
1381
1370
|
:dynamic_name => true,
|
1382
|
-
:
|
1371
|
+
:allowed_from_server => false,
|
1372
|
+
:description => "Controls auto-instrumentation of Grape at start up. May be one of [auto|prepend|chain|disabled]."
|
1383
1373
|
},
|
1384
|
-
:'
|
1385
|
-
:default =>
|
1374
|
+
:'instrumentation.grpc_client' => {
|
1375
|
+
:default => instrumentation_value_of(:disable_grpc_client),
|
1376
|
+
:documentation_default => 'auto',
|
1386
1377
|
:public => true,
|
1387
|
-
:type =>
|
1388
|
-
:
|
1389
|
-
:
|
1378
|
+
:type => String,
|
1379
|
+
:dynamic_name => true,
|
1380
|
+
:allowed_from_server => false,
|
1381
|
+
:description => 'Controls auto-instrumentation of gRPC clients at start up. May be one of [auto|prepend|chain|disabled].'
|
1390
1382
|
},
|
1391
|
-
:'
|
1392
|
-
:default =>
|
1393
|
-
:public =>
|
1394
|
-
:type =>
|
1395
|
-
:allowed_from_server =>
|
1396
|
-
:
|
1383
|
+
:'instrumentation.grpc.host_denylist' => {
|
1384
|
+
:default => [],
|
1385
|
+
:public => true,
|
1386
|
+
:type => Array,
|
1387
|
+
:allowed_from_server => false,
|
1388
|
+
:transform => DefaultSource.method(:convert_to_regexp_list),
|
1389
|
+
:description => %Q(Specifies a list of hostname patterns separated by commas that will match gRPC hostnames that traffic is to be ignored by New Relic for. New Relic's gRPC client instrumentation will ignore traffic streamed to a host matching any of these patterns, and New Relic's gRPC server instrumentation will ignore traffic for a server running on a host whose hostname matches any of these patterns. By default, no traffic is ignored when gRPC instrumentation is itself enabled. For example, "private.com$,exception.*")
|
1397
1390
|
},
|
1398
|
-
:
|
1399
|
-
:default =>
|
1400
|
-
:
|
1391
|
+
:'instrumentation.grpc_server' => {
|
1392
|
+
:default => instrumentation_value_of(:disable_grpc_server),
|
1393
|
+
:documentation_default => 'auto',
|
1394
|
+
:public => true,
|
1401
1395
|
:type => String,
|
1402
|
-
:
|
1403
|
-
:
|
1396
|
+
:dynamic_name => true,
|
1397
|
+
:allowed_from_server => false,
|
1398
|
+
:description => 'Controls auto-instrumentation of gRPC servers at start up. May be one of [auto|prepend|chain|disabled].'
|
1404
1399
|
},
|
1405
|
-
:
|
1406
|
-
:default => '',
|
1407
|
-
:
|
1408
|
-
:type => String,
|
1409
|
-
:allowed_from_server => true,
|
1410
|
-
:description => 'Beacon for real user monitoring.'
|
1411
|
-
},
|
1412
|
-
:error_beacon => {
|
1413
|
-
:default => '',
|
1414
|
-
:public => false,
|
1415
|
-
:type => String,
|
1416
|
-
:allowed_from_server => true,
|
1417
|
-
:description => 'Error beacon for real user monitoring.'
|
1418
|
-
},
|
1419
|
-
:application_id => {
|
1420
|
-
:default => '',
|
1421
|
-
:public => false,
|
1422
|
-
:type => String,
|
1423
|
-
:allowed_from_server => true,
|
1424
|
-
:description => 'Application ID for real user monitoring.'
|
1425
|
-
},
|
1426
|
-
:js_agent_file => {
|
1427
|
-
:default => '',
|
1428
|
-
:public => false,
|
1429
|
-
:type => String,
|
1430
|
-
:allowed_from_server => true,
|
1431
|
-
:description => 'Javascript agent file for real user monitoring.'
|
1432
|
-
},
|
1433
|
-
:'browser_monitoring.auto_instrument' => {
|
1434
|
-
:default => value_of(:'rum.enabled'),
|
1435
|
-
:public => true,
|
1436
|
-
:type => Boolean,
|
1437
|
-
:allowed_from_server => true,
|
1438
|
-
:description => 'If `true`, enables [auto-injection](/docs/browser/new-relic-browser/installation-configuration/adding-apps-new-relic-browser#select-apm-app) of the JavaScript header for page load timing (sometimes referred to as real user monitoring or RUM).'
|
1439
|
-
},
|
1440
|
-
:'browser_monitoring.capture_attributes' => {
|
1441
|
-
:default => false,
|
1400
|
+
:'instrumentation.httpclient' => {
|
1401
|
+
:default => 'auto',
|
1402
|
+
:documentation_default => 'auto',
|
1442
1403
|
:public => true,
|
1443
|
-
:type => Boolean,
|
1444
|
-
:deprecated => true,
|
1445
|
-
:allowed_from_server => false,
|
1446
|
-
:description => 'Use [`browser_monitoring.attributes.enabled`](#browser_monitoring-attributes-enabled) instead.'
|
1447
|
-
},
|
1448
|
-
:'browser_monitoring.loader' => {
|
1449
|
-
:default => DefaultSource.browser_monitoring_loader,
|
1450
|
-
:public => false,
|
1451
|
-
:type => String,
|
1452
|
-
:allowed_from_server => true,
|
1453
|
-
:description => 'Type of JavaScript agent loader to use for browser monitoring instrumentation.'
|
1454
|
-
},
|
1455
|
-
:'browser_monitoring.loader_version' => {
|
1456
|
-
:default => '',
|
1457
|
-
:public => false,
|
1458
|
-
:type => String,
|
1459
|
-
:allowed_from_server => true,
|
1460
|
-
:description => 'Version of JavaScript agent loader (returned from the New Relic [collector](/docs/apm/new-relic-apm/getting-started/glossary#collector).)'
|
1461
|
-
},
|
1462
|
-
:'browser_monitoring.debug' => {
|
1463
|
-
:default => false,
|
1464
|
-
:public => false,
|
1465
|
-
:type => Boolean,
|
1466
|
-
:allowed_from_server => true,
|
1467
|
-
:description => 'Enable or disable debugging version of JavaScript agent loader for browser monitoring instrumentation.'
|
1468
|
-
},
|
1469
|
-
:'browser_monitoring.ssl_for_http' => {
|
1470
|
-
:default => nil,
|
1471
|
-
:allow_nil => true,
|
1472
|
-
:public => false,
|
1473
|
-
:type => Boolean,
|
1474
|
-
:allowed_from_server => true,
|
1475
|
-
:description => 'Enable or disable HTTPS instrumentation by JavaScript agent on HTTP pages.'
|
1476
|
-
},
|
1477
|
-
:js_agent_loader => {
|
1478
|
-
:default => '',
|
1479
|
-
:public => false,
|
1480
1404
|
:type => String,
|
1481
|
-
:
|
1482
|
-
:description => 'JavaScript agent loader content.'
|
1483
|
-
},
|
1484
|
-
:js_errors_beta => {
|
1485
|
-
:default => false,
|
1486
|
-
:public => false,
|
1487
|
-
:type => Boolean,
|
1405
|
+
:dynamic_name => true,
|
1488
1406
|
:allowed_from_server => false,
|
1489
|
-
:
|
1490
|
-
:description => 'Enable or disable beta JavaScript error reporting.'
|
1491
|
-
},
|
1492
|
-
:trusted_account_ids => {
|
1493
|
-
:default => [],
|
1494
|
-
:public => false,
|
1495
|
-
:type => Array,
|
1496
|
-
:allowed_from_server => true,
|
1497
|
-
:description => 'List of trusted New Relic account IDs for the purposes of cross-application tracing. Inbound requests from applications including cross-application headers that do not come from an account in this list will be ignored.'
|
1407
|
+
:description => "Controls auto-instrumentation of HTTPClient at start up. May be one of [auto|prepend|chain|disabled]."
|
1498
1408
|
},
|
1499
|
-
:
|
1500
|
-
:default =>
|
1409
|
+
:'instrumentation.httprb' => {
|
1410
|
+
:default => 'auto',
|
1411
|
+
:documentation_default => 'auto',
|
1501
1412
|
:public => true,
|
1502
|
-
:type => Boolean,
|
1503
|
-
:allowed_from_server => true,
|
1504
|
-
:deprecated => true,
|
1505
|
-
:description => deprecated_description(
|
1506
|
-
:'distributed_tracing-enabled',
|
1507
|
-
'If `true`, enables [cross-application tracing](/docs/agents/ruby-agent/features/cross-application-tracing-ruby/)'
|
1508
|
-
)
|
1509
|
-
},
|
1510
|
-
:cross_application_tracing => {
|
1511
|
-
:default => nil,
|
1512
|
-
:allow_nil => true,
|
1513
|
-
:public => false,
|
1514
|
-
:type => Boolean,
|
1515
|
-
:allowed_from_server => false,
|
1516
|
-
:deprecated => true,
|
1517
|
-
:description => 'Deprecated in favor of distributed_tracing.enabled'
|
1518
|
-
},
|
1519
|
-
:encoding_key => {
|
1520
|
-
:default => '',
|
1521
|
-
:public => false,
|
1522
|
-
:type => String,
|
1523
|
-
:allowed_from_server => true,
|
1524
|
-
:description => 'Encoding key for cross-application tracing.'
|
1525
|
-
},
|
1526
|
-
:cross_process_id => {
|
1527
|
-
:default => '',
|
1528
|
-
:public => false,
|
1529
1413
|
:type => String,
|
1530
|
-
:
|
1531
|
-
:
|
1532
|
-
|
1533
|
-
:'thread_profiler.enabled' => {
|
1534
|
-
:default => DefaultSource.thread_profiler_enabled,
|
1535
|
-
:public => true,
|
1536
|
-
:type => Boolean,
|
1537
|
-
:allowed_from_server => true,
|
1538
|
-
:description => 'If `true`, enables use of the [thread profiler](/docs/apm/applications-menu/events/thread-profiler-tool).'
|
1539
|
-
},
|
1540
|
-
:'thread_profiler.max_profile_overhead' => {
|
1541
|
-
:default => 0.05,
|
1542
|
-
:public => false,
|
1543
|
-
:type => Float,
|
1544
|
-
:allowed_from_server => true,
|
1545
|
-
:description => 'Maximum overhead percentage for thread profiling before agent reduces polling frequency'
|
1414
|
+
:dynamic_name => true,
|
1415
|
+
:allowed_from_server => false,
|
1416
|
+
:description => 'Controls auto-instrumentation of http.rb gem at start up. May be one of [auto|prepend|chain|disabled].'
|
1546
1417
|
},
|
1547
|
-
:
|
1548
|
-
:default => '
|
1418
|
+
:'instrumentation.logger' => {
|
1419
|
+
:default => instrumentation_value_from_boolean(:'application_logging.enabled'),
|
1420
|
+
:documentation_default => 'auto',
|
1549
1421
|
:public => true,
|
1550
1422
|
:type => String,
|
1423
|
+
:dynamic_name => true,
|
1551
1424
|
:allowed_from_server => false,
|
1552
|
-
:description => '
|
1553
|
-
},
|
1554
|
-
:'analytics_events.enabled' => {
|
1555
|
-
:default => true,
|
1556
|
-
:public => true,
|
1557
|
-
:type => Boolean,
|
1558
|
-
:allowed_from_server => true,
|
1559
|
-
:description => 'If `true`, enables analytics event sampling.'
|
1560
|
-
},
|
1561
|
-
:'analytics_events.max_samples_stored' => {
|
1562
|
-
:default => 1200,
|
1563
|
-
:public => true,
|
1564
|
-
:type => Integer,
|
1565
|
-
:allowed_from_server => true,
|
1566
|
-
:description => 'Defines the maximum number of request events reported from a single harvest.'
|
1425
|
+
:description => 'Controls auto-instrumentation of Ruby standard library Logger at start up. May be one of [auto|prepend|chain|disabled].'
|
1567
1426
|
},
|
1568
|
-
:'
|
1569
|
-
:default =>
|
1427
|
+
:'instrumentation.memcache' => {
|
1428
|
+
:default => 'auto',
|
1570
1429
|
:public => true,
|
1571
|
-
:type =>
|
1572
|
-
:
|
1573
|
-
:allowed_from_server => false,
|
1574
|
-
:description => 'Use [`transaction_events.attributes.enabled`](#transaction_events-attributes-enabled) instead.'
|
1575
|
-
},
|
1576
|
-
:restart_thread_in_children => {
|
1577
|
-
:default => true,
|
1578
|
-
:public => false,
|
1579
|
-
:type => Boolean,
|
1580
|
-
:allowed_from_server => false,
|
1581
|
-
:description => 'Controls whether to check on running a transaction whether to respawn the harvest thread.'
|
1582
|
-
},
|
1583
|
-
:normalize_json_string_encodings => {
|
1584
|
-
:default => true,
|
1585
|
-
:public => false,
|
1586
|
-
:type => Boolean,
|
1430
|
+
:type => String,
|
1431
|
+
:dynamic_name => true,
|
1587
1432
|
:allowed_from_server => false,
|
1588
|
-
:description => 'Controls
|
1433
|
+
:description => 'Controls auto-instrumentation of dalli gem for Memcache at start up. May be one of [auto|prepend|chain|disabled].'
|
1589
1434
|
},
|
1590
|
-
:
|
1591
|
-
:default =>
|
1435
|
+
:'instrumentation.memcached' => {
|
1436
|
+
:default => 'auto',
|
1437
|
+
:documentation_default => 'auto',
|
1592
1438
|
:public => true,
|
1593
|
-
:type =>
|
1594
|
-
:allowed_from_server => false,
|
1595
|
-
:description => 'Backports the faster ActiveRecord connection lookup introduced in Rails 6, which improves agent performance when instrumenting ActiveRecord. Note that this setting may not be compatible with other gems that patch ActiveRecord.'
|
1596
|
-
},
|
1597
|
-
:disable_vm_sampler => {
|
1598
|
-
:default => false,
|
1599
|
-
:public => true,
|
1600
|
-
:type => Boolean,
|
1439
|
+
:type => String,
|
1601
1440
|
:dynamic_name => true,
|
1602
1441
|
:allowed_from_server => false,
|
1603
|
-
:description
|
1442
|
+
:description => 'Controls auto-instrumentation of memcached gem for Memcache at start up. May be one of [auto|prepend|chain|disabled].'
|
1604
1443
|
},
|
1605
|
-
:
|
1606
|
-
:default
|
1607
|
-
:
|
1608
|
-
:
|
1444
|
+
:'instrumentation.memcache_client' => {
|
1445
|
+
:default => instrumentation_value_of(:disable_memcache_client),
|
1446
|
+
:documentation_default => 'auto',
|
1447
|
+
:public => true,
|
1448
|
+
:type => String,
|
1609
1449
|
:dynamic_name => true,
|
1610
1450
|
:allowed_from_server => false,
|
1611
|
-
:description
|
1451
|
+
:description => 'Controls auto-instrumentation of memcache-client gem for Memcache at start up. May be one of [auto|prepend|chain|disabled].'
|
1612
1452
|
},
|
1613
|
-
:
|
1614
|
-
:default
|
1615
|
-
:
|
1616
|
-
:
|
1453
|
+
:'instrumentation.mongo' => {
|
1454
|
+
:default => 'enabled',
|
1455
|
+
:documentation_default => 'enabled',
|
1456
|
+
:public => true,
|
1457
|
+
:type => String,
|
1617
1458
|
:dynamic_name => true,
|
1618
1459
|
:allowed_from_server => false,
|
1619
|
-
:description
|
1460
|
+
:description => "Controls auto-instrumentation of Mongo at start up. May be one of [enabled|disabled]."
|
1620
1461
|
},
|
1621
|
-
:
|
1622
|
-
:default
|
1623
|
-
:
|
1624
|
-
:
|
1462
|
+
:'instrumentation.net_http' => {
|
1463
|
+
:default => 'auto',
|
1464
|
+
:documentation_default => 'auto',
|
1465
|
+
:public => true,
|
1466
|
+
:type => String,
|
1625
1467
|
:dynamic_name => true,
|
1626
1468
|
:allowed_from_server => false,
|
1627
|
-
:description
|
1469
|
+
:description => "Controls auto-instrumentation of Net::HTTP at start up. May be one of [auto|prepend|chain|disabled]."
|
1628
1470
|
},
|
1629
|
-
:
|
1630
|
-
:default
|
1631
|
-
:
|
1632
|
-
:
|
1471
|
+
:'instrumentation.puma_rack' => {
|
1472
|
+
:default => value_of(:'instrumentation.rack'),
|
1473
|
+
:documentation_default => 'auto',
|
1474
|
+
:public => true,
|
1475
|
+
:type => String,
|
1633
1476
|
:dynamic_name => true,
|
1634
1477
|
:allowed_from_server => false,
|
1635
|
-
:description
|
1478
|
+
:description => "Controls auto-instrumentation of Puma::Rack. When enabled, the agent hooks into the " \
|
1479
|
+
"`to_app` method in Puma::Rack::Builder to find gems to instrument during " \
|
1480
|
+
"application startup. May be one of [auto|prepend|chain|disabled]."
|
1636
1481
|
},
|
1637
|
-
:
|
1638
|
-
:default
|
1639
|
-
:
|
1640
|
-
:
|
1641
|
-
:
|
1482
|
+
:'instrumentation.puma_rack_urlmap' => {
|
1483
|
+
:default => value_of(:'instrumentation.rack_urlmap'),
|
1484
|
+
:documentation_default => 'auto',
|
1485
|
+
:public => true,
|
1486
|
+
:type => String,
|
1642
1487
|
:dynamic_name => true,
|
1643
1488
|
:allowed_from_server => false,
|
1644
|
-
:description
|
1489
|
+
:description => 'Controls auto-instrumentation of Puma::Rack::URLMap at start up. May be one of [auto|prepend|chain|disabled].'
|
1645
1490
|
},
|
1646
|
-
:
|
1647
|
-
:default
|
1648
|
-
:
|
1649
|
-
:
|
1650
|
-
:
|
1491
|
+
:'instrumentation.rack' => {
|
1492
|
+
:default => 'auto',
|
1493
|
+
:documentation_default => 'auto',
|
1494
|
+
:public => true,
|
1495
|
+
:type => String,
|
1651
1496
|
:dynamic_name => true,
|
1652
1497
|
:allowed_from_server => false,
|
1653
|
-
:description
|
1498
|
+
:description => "Controls auto-instrumentation of Rack. When enabled, the agent hooks into the " \
|
1499
|
+
"`to_app` method in Rack::Builder to find gems to instrument during " \
|
1500
|
+
"application startup. May be one of [auto|prepend|chain|disabled]."
|
1654
1501
|
},
|
1655
|
-
:
|
1656
|
-
:default
|
1657
|
-
:
|
1658
|
-
:
|
1502
|
+
:'instrumentation.rack_urlmap' => {
|
1503
|
+
:default => 'auto',
|
1504
|
+
:documentation_default => 'auto',
|
1505
|
+
:public => true,
|
1506
|
+
:type => String,
|
1659
1507
|
:dynamic_name => true,
|
1660
|
-
:deprecated => true,
|
1661
1508
|
:allowed_from_server => false,
|
1662
|
-
:description
|
1509
|
+
:description => 'Controls auto-instrumentation of Rack::URLMap at start up. May be one of [auto|prepend|chain|disabled].'
|
1663
1510
|
},
|
1664
|
-
:'instrumentation.
|
1665
|
-
:default =>
|
1666
|
-
:public =>
|
1511
|
+
:'instrumentation.rake' => {
|
1512
|
+
:default => 'auto',
|
1513
|
+
:public => true,
|
1667
1514
|
:type => String,
|
1668
1515
|
:dynamic_name => true,
|
1669
1516
|
:allowed_from_server => false,
|
1670
|
-
:description => "Controls auto-instrumentation of
|
1517
|
+
:description => "Controls auto-instrumentation of rake at start up. May be one of [auto|prepend|chain|disabled]."
|
1671
1518
|
},
|
1672
|
-
:
|
1673
|
-
:default
|
1674
|
-
:public
|
1675
|
-
:type
|
1519
|
+
:'instrumentation.redis' => {
|
1520
|
+
:default => 'auto',
|
1521
|
+
:public => true,
|
1522
|
+
:type => String,
|
1676
1523
|
:dynamic_name => true,
|
1677
|
-
:deprecated => true,
|
1678
1524
|
:allowed_from_server => false,
|
1679
|
-
:description
|
1525
|
+
:description => "Controls auto-instrumentation of Redis at start up. May be one of [auto|prepend|chain|disabled]."
|
1680
1526
|
},
|
1681
|
-
:
|
1682
|
-
:default
|
1683
|
-
:
|
1684
|
-
:
|
1527
|
+
:'instrumentation.resque' => {
|
1528
|
+
:default => 'auto',
|
1529
|
+
:documentation_default => 'auto',
|
1530
|
+
:public => true,
|
1531
|
+
:type => String,
|
1685
1532
|
:dynamic_name => true,
|
1686
1533
|
:allowed_from_server => false,
|
1687
|
-
:
|
1688
|
-
:description => deprecated_description(:'instrumentation.net_http',
|
1689
|
-
'If `true`, disables instrumentation for Net::HTTP.'
|
1690
|
-
)
|
1534
|
+
:description => "Controls auto-instrumentation of resque at start up. May be one of [auto|prepend|chain|disabled]."
|
1691
1535
|
},
|
1692
|
-
:
|
1693
|
-
:default
|
1694
|
-
:public
|
1695
|
-
:type
|
1536
|
+
:'instrumentation.sinatra' => {
|
1537
|
+
:default => 'auto',
|
1538
|
+
:public => true,
|
1539
|
+
:type => String,
|
1696
1540
|
:dynamic_name => true,
|
1697
1541
|
:allowed_from_server => false,
|
1698
|
-
:
|
1699
|
-
:description => deprecated_description(:'instrumentation.rack', 'If `true`, prevents the agent from hooking into the `to_app` method in Rack::Builder to find gems to instrument during application startup.')
|
1542
|
+
:description => "Controls auto-instrumentation of Sinatra at start up. May be one of [auto|prepend|chain|disabled]."
|
1700
1543
|
},
|
1701
|
-
:
|
1702
|
-
:default
|
1703
|
-
:public
|
1704
|
-
:type
|
1544
|
+
:'instrumentation.thread' => {
|
1545
|
+
:default => 'auto',
|
1546
|
+
:public => true,
|
1547
|
+
:type => String,
|
1705
1548
|
:dynamic_name => true,
|
1706
1549
|
:allowed_from_server => false,
|
1707
|
-
:
|
1708
|
-
:description => deprecated_description(:'instrumentation.rack_urlmap', 'If `true`, prevents the agent from hooking into Rack::URLMap to install middleware tracing.')
|
1550
|
+
:description => "Controls auto-instrumentation of the Thread class at start up to allow the agent to correctly nest spans inside of an asynchronous transaction. This does not enable the agent to automatically trace all threads created (see `instrumentation.thread.tracing`). May be one of [auto|prepend|chain|disabled]."
|
1709
1551
|
},
|
1710
|
-
:
|
1711
|
-
:default
|
1712
|
-
:public
|
1713
|
-
:type
|
1714
|
-
:dynamic_name => true,
|
1552
|
+
:'instrumentation.thread.tracing' => {
|
1553
|
+
:default => true,
|
1554
|
+
:public => true,
|
1555
|
+
:type => Boolean,
|
1715
1556
|
:allowed_from_server => false,
|
1716
|
-
:
|
1717
|
-
:description => deprecated_description(:'instrumentation.puma_rack', 'If `true`, prevents the agent from hooking into the `to_app` method in Puma::Rack::Builder to find gems to instrument during application startup.')
|
1557
|
+
:description => "Controls auto-instrumentation of the Thread class at start up to automatically add tracing to all Threads created in the application."
|
1718
1558
|
},
|
1719
|
-
:
|
1720
|
-
:default
|
1721
|
-
:public
|
1722
|
-
:type
|
1723
|
-
:dynamic_name => true,
|
1559
|
+
:'thread_ids_enabled' => {
|
1560
|
+
:default => false,
|
1561
|
+
:public => false,
|
1562
|
+
:type => Boolean,
|
1724
1563
|
:allowed_from_server => false,
|
1725
|
-
:
|
1726
|
-
:description => deprecated_description(:'instrumentation.puma_rack_urlmap', 'If `true`, prevents the agent from hooking into Puma::Rack::URLMap to install middleware tracing.')
|
1564
|
+
:description => "If enabled, will append the current Thread and Fiber object ids onto the segment names of segments created in Threads and concurrent-ruby"
|
1727
1565
|
},
|
1728
|
-
:
|
1729
|
-
:default
|
1730
|
-
:public
|
1731
|
-
:type
|
1566
|
+
:'instrumentation.tilt' => {
|
1567
|
+
:default => "auto",
|
1568
|
+
:public => true,
|
1569
|
+
:type => String,
|
1732
1570
|
:dynamic_name => true,
|
1733
|
-
:deprecated => true,
|
1734
1571
|
:allowed_from_server => false,
|
1735
|
-
:description
|
1572
|
+
:description => 'Controls auto-instrumentation of the Tilt template rendering library at start up. May be one of [auto|prepend|chain|disabled].'
|
1736
1573
|
},
|
1737
|
-
:
|
1738
|
-
:default
|
1739
|
-
:
|
1740
|
-
:
|
1574
|
+
:'instrumentation.typhoeus' => {
|
1575
|
+
:default => 'auto',
|
1576
|
+
:documentation_default => 'auto',
|
1577
|
+
:public => true,
|
1578
|
+
:type => String,
|
1741
1579
|
:dynamic_name => true,
|
1742
|
-
:deprecated => true,
|
1743
1580
|
:allowed_from_server => false,
|
1744
|
-
:description
|
1745
|
-
},
|
1746
|
-
:disable_middleware_instrumentation => {
|
1747
|
-
:default => false,
|
1748
|
-
:public => true,
|
1749
|
-
:type => Boolean,
|
1750
|
-
:allowed_from_server => false,
|
1751
|
-
:description => 'If `true`, the agent won\'t wrap third-party middlewares in instrumentation (regardless of whether they are installed via Rack::Builder or Rails).'
|
1581
|
+
:description => "Controls auto-instrumentation of Typhoeus at start up. May be one of [auto|prepend|chain|disabled]."
|
1752
1582
|
},
|
1753
|
-
|
1754
|
-
|
1755
|
-
:
|
1756
|
-
:
|
1757
|
-
:
|
1758
|
-
:
|
1583
|
+
# Message tracer
|
1584
|
+
:'message_tracer.segment_parameters.enabled' => {
|
1585
|
+
:default => true,
|
1586
|
+
:public => true,
|
1587
|
+
:type => Boolean,
|
1588
|
+
:allowed_from_server => true,
|
1589
|
+
:description => 'If `true`, the agent will collect metadata about messages and attach them as segment parameters.'
|
1759
1590
|
},
|
1760
|
-
|
1761
|
-
|
1762
|
-
:
|
1763
|
-
:
|
1591
|
+
# Mongo
|
1592
|
+
:'mongo.capture_queries' => {
|
1593
|
+
:default => true,
|
1594
|
+
:public => true,
|
1595
|
+
:type => Boolean,
|
1596
|
+
:allowed_from_server => true,
|
1597
|
+
:description => 'If `true`, the agent captures Mongo queries in transaction traces.'
|
1598
|
+
},
|
1599
|
+
:'mongo.obfuscate_queries' => {
|
1600
|
+
:default => true,
|
1601
|
+
:public => true,
|
1602
|
+
:type => Boolean,
|
1603
|
+
:allowed_from_server => true,
|
1604
|
+
:description => 'If `true`, the agent obfuscates Mongo queries in transaction traces.'
|
1605
|
+
},
|
1606
|
+
# Process host
|
1607
|
+
:'process_host.display_name' => {
|
1608
|
+
:default => proc { NewRelic::Agent::Hostname.get },
|
1609
|
+
:public => true,
|
1610
|
+
:type => String,
|
1764
1611
|
:allowed_from_server => false,
|
1765
|
-
:description
|
1612
|
+
:description => 'Specify a custom host name for [display in the New Relic UI](/docs/apm/new-relic-apm/maintenance/add-rename-remove-hosts#display_name).'
|
1766
1613
|
},
|
1767
|
-
|
1768
|
-
|
1769
|
-
:
|
1770
|
-
:
|
1614
|
+
# Rails
|
1615
|
+
:'defer_rails_initialization' => {
|
1616
|
+
:default => false,
|
1617
|
+
:public => true,
|
1618
|
+
:type => Boolean,
|
1619
|
+
:external => true, # this config is used directly from the ENV variables
|
1771
1620
|
:allowed_from_server => false,
|
1772
|
-
:
|
1773
|
-
|
1621
|
+
:description => <<-DESCRIPTION
|
1622
|
+
If `true`, when the agent is in an application using Ruby on Rails, it will start after `config/initializers` run.
|
1623
|
+
|
1624
|
+
<Callout variant="caution">
|
1625
|
+
This option may only be set by environment variable.
|
1626
|
+
</Callout>
|
1627
|
+
DESCRIPTION
|
1774
1628
|
},
|
1775
|
-
|
1776
|
-
|
1777
|
-
:
|
1778
|
-
:
|
1629
|
+
# Rake
|
1630
|
+
:'rake.tasks' => {
|
1631
|
+
:default => [],
|
1632
|
+
:public => true,
|
1633
|
+
:type => Array,
|
1779
1634
|
:allowed_from_server => false,
|
1780
|
-
:
|
1635
|
+
:transform => DefaultSource.method(:convert_to_regexp_list),
|
1636
|
+
:description => 'Specify an Array of Rake tasks to automatically instrument. ' \
|
1637
|
+
'This configuration option converts the Array to a RegEx list. If you\'d like ' \
|
1638
|
+
'to allow all tasks by default, use `rake.tasks: [.+]`. No rake tasks will be ' \
|
1639
|
+
'instrumented unless they\'re added to this list. For more information, ' \
|
1640
|
+
'visit the (New Relic Rake Instrumentation docs)[/docs/apm/agents/ruby-agent/background-jobs/rake-instrumentation].'
|
1781
1641
|
},
|
1782
|
-
:
|
1783
|
-
:default
|
1784
|
-
:public
|
1785
|
-
:type
|
1642
|
+
:'rake.connect_timeout' => {
|
1643
|
+
:default => 10,
|
1644
|
+
:public => true,
|
1645
|
+
:type => Integer,
|
1786
1646
|
:allowed_from_server => false,
|
1787
|
-
:description
|
1647
|
+
:description => 'Timeout for waiting on connect to complete before a rake task'
|
1788
1648
|
},
|
1789
|
-
|
1790
|
-
|
1791
|
-
:
|
1792
|
-
:
|
1649
|
+
# Rules
|
1650
|
+
:'rules.ignore_url_regexes' => {
|
1651
|
+
:default => [],
|
1652
|
+
:public => true,
|
1653
|
+
:type => Array,
|
1793
1654
|
:allowed_from_server => true,
|
1794
|
-
:
|
1655
|
+
:transform => DefaultSource.method(:convert_to_regexp_list),
|
1656
|
+
:description => 'Define transactions you want the agent to ignore, by specifying a list of patterns matching the URI you want to ignore. For more detail, see [the docs on ignoring specific transactions](/docs/agents/ruby-agent/api-guides/ignoring-specific-transactions/#config-ignoring).'
|
1795
1657
|
},
|
1796
|
-
|
1797
|
-
|
1798
|
-
:
|
1799
|
-
:
|
1658
|
+
# Slow SQL
|
1659
|
+
:'slow_sql.enabled' => {
|
1660
|
+
:default => value_of(:'transaction_tracer.enabled'),
|
1661
|
+
:documentation_default => true,
|
1662
|
+
:public => true,
|
1663
|
+
:type => Boolean,
|
1800
1664
|
:allowed_from_server => true,
|
1801
|
-
:description
|
1802
|
-
},
|
1803
|
-
:ca_bundle_path => {
|
1804
|
-
:default => nil,
|
1805
|
-
:allow_nil => true,
|
1806
|
-
:public => true,
|
1807
|
-
:type => String,
|
1808
|
-
:allowed_from_server => false,
|
1809
|
-
:description => "Manual override for the path to your local CA bundle. This CA bundle will be used to validate the SSL certificate presented by New Relic\'s data collection service."
|
1665
|
+
:description => 'If `true`, the agent collects [slow SQL queries](/docs/apm/applications-menu/monitoring/viewing-slow-query-details).'
|
1810
1666
|
},
|
1811
|
-
:'
|
1812
|
-
:default
|
1813
|
-
:
|
1814
|
-
:
|
1667
|
+
:'slow_sql.explain_threshold' => {
|
1668
|
+
:default => value_of(:'transaction_tracer.explain_threshold'),
|
1669
|
+
:documentation_default => 0.5,
|
1670
|
+
:public => true,
|
1671
|
+
:type => Float,
|
1815
1672
|
:allowed_from_server => true,
|
1816
|
-
:
|
1817
|
-
:description => 'Define transactions you want the agent to ignore, by specifying a list of patterns matching the URI you want to ignore.'
|
1673
|
+
:description => 'Specify a threshold in seconds. The agent collects [slow SQL queries](/docs/apm/applications-menu/monitoring/viewing-slow-query-details) and explain plans that exceed this threshold.'
|
1818
1674
|
},
|
1819
|
-
:'
|
1820
|
-
:default
|
1821
|
-
:
|
1822
|
-
:
|
1675
|
+
:'slow_sql.explain_enabled' => {
|
1676
|
+
:default => value_of(:'transaction_tracer.explain_enabled'),
|
1677
|
+
:documentation_default => true,
|
1678
|
+
:public => true,
|
1679
|
+
:type => Boolean,
|
1823
1680
|
:allowed_from_server => true,
|
1824
|
-
:description
|
1681
|
+
:description => 'If `true`, the agent collects explain plans in slow SQL queries. If this setting is omitted, the [`transaction_tracer.explain_enabled`](#transaction_tracer-explain_enabled) setting will be applied as the default setting for explain plans in slow SQL as well.'
|
1825
1682
|
},
|
1826
|
-
:'
|
1827
|
-
:default
|
1828
|
-
:
|
1829
|
-
:
|
1683
|
+
:'slow_sql.record_sql' => {
|
1684
|
+
:default => value_of(:'transaction_tracer.record_sql'),
|
1685
|
+
:documentation_default => 'obfuscated',
|
1686
|
+
:public => true,
|
1687
|
+
:type => String,
|
1830
1688
|
:allowed_from_server => true,
|
1831
|
-
:description
|
1689
|
+
:description => 'Defines an obfuscation level for slow SQL queries. Valid options are `obfuscated`, `raw`, or `none`).'
|
1832
1690
|
},
|
1833
|
-
:'
|
1834
|
-
:default
|
1835
|
-
:public
|
1836
|
-
:type
|
1691
|
+
:'slow_sql.use_longer_sql_id' => {
|
1692
|
+
:default => false,
|
1693
|
+
:public => true,
|
1694
|
+
:type => Boolean,
|
1837
1695
|
:allowed_from_server => true,
|
1838
|
-
:description
|
1696
|
+
:description => 'Generate a longer sql_id for slow SQL traces. sql_id is used for aggregation of similar queries.'
|
1839
1697
|
},
|
1840
|
-
|
1841
|
-
|
1842
|
-
:
|
1843
|
-
:
|
1698
|
+
# Span events
|
1699
|
+
:'span_events.enabled' => {
|
1700
|
+
:default => true,
|
1701
|
+
:public => true,
|
1702
|
+
:type => Boolean,
|
1844
1703
|
:allowed_from_server => true,
|
1845
|
-
:description
|
1846
|
-
:dynamic_name => true
|
1704
|
+
:description => 'If `true`, enables span event sampling.'
|
1847
1705
|
},
|
1848
|
-
:
|
1849
|
-
:default
|
1850
|
-
:public
|
1851
|
-
:type
|
1706
|
+
:'span_events.queue_size' => {
|
1707
|
+
:default => 10_000,
|
1708
|
+
:public => true,
|
1709
|
+
:type => Integer,
|
1852
1710
|
:allowed_from_server => false,
|
1853
|
-
:
|
1854
|
-
:description
|
1855
|
-
|
1856
|
-
|
1711
|
+
:external => :infinite_tracing,
|
1712
|
+
:description => "Sets the maximum number of span events to buffer when streaming to the trace observer."
|
1713
|
+
},
|
1714
|
+
:'span_events.max_samples_stored' => {
|
1715
|
+
:default => 2000,
|
1716
|
+
:public => true,
|
1717
|
+
:type => Integer,
|
1718
|
+
:allowed_from_server => true,
|
1719
|
+
:description => 'Defines the maximum number of span events reported from a single harvest. Any Integer between 1 and 10000 is valid.'
|
1857
1720
|
},
|
1858
|
-
|
1859
|
-
|
1860
|
-
:
|
1861
|
-
:
|
1721
|
+
# Strip exception messages
|
1722
|
+
:'strip_exception_messages.enabled' => {
|
1723
|
+
:default => value_of(:high_security),
|
1724
|
+
:documentation_default => false,
|
1725
|
+
:public => true,
|
1726
|
+
:type => Boolean,
|
1862
1727
|
:allowed_from_server => false,
|
1863
|
-
:
|
1864
|
-
:description => deprecated_description(:'instrumentation.grape',
|
1865
|
-
'If `true`, the agent won\'t install Grape instrumentation.'
|
1866
|
-
)
|
1728
|
+
:description => 'If true, the agent strips messages from all exceptions except those in the [allowlist](#strip_exception_messages-allowlist). Enabled automatically in [high security mode](/docs/accounts-partnerships/accounts/security/high-security).'
|
1867
1729
|
},
|
1868
|
-
:'
|
1869
|
-
:default =>
|
1870
|
-
:public =>
|
1730
|
+
:'strip_exception_messages.allowed_classes' => {
|
1731
|
+
:default => '',
|
1732
|
+
:public => true,
|
1871
1733
|
:type => String,
|
1872
|
-
:dynamic_name => true,
|
1873
1734
|
:allowed_from_server => false,
|
1874
|
-
:
|
1735
|
+
:transform => DefaultSource.method(:convert_to_constant_list),
|
1736
|
+
:description => 'Specify a list of exceptions you do not want the agent to strip when [strip_exception_messages](#strip_exception_messages-enabled) is `true`. Separate exceptions with a comma. For example, `"ImportantException,PreserveMessageException"`.'
|
1875
1737
|
},
|
1876
|
-
|
1877
|
-
|
1878
|
-
:
|
1879
|
-
:
|
1880
|
-
:
|
1881
|
-
:
|
1738
|
+
# Thread profiler
|
1739
|
+
:'thread_profiler.enabled' => {
|
1740
|
+
:default => DefaultSource.thread_profiler_enabled,
|
1741
|
+
:documentation_default => false,
|
1742
|
+
:public => true,
|
1743
|
+
:type => Boolean,
|
1744
|
+
:allowed_from_server => true,
|
1745
|
+
:description => 'If `true`, enables use of the [thread profiler](/docs/apm/applications-menu/events/thread-profiler-tool).'
|
1882
1746
|
},
|
1883
|
-
|
1884
|
-
|
1885
|
-
:
|
1886
|
-
:
|
1747
|
+
# Utilization
|
1748
|
+
:'utilization.detect_aws' => {
|
1749
|
+
:default => true,
|
1750
|
+
:public => true,
|
1751
|
+
:type => Boolean,
|
1887
1752
|
:allowed_from_server => false,
|
1888
|
-
:
|
1753
|
+
:dynamic_name => true,
|
1754
|
+
:description => 'If `true`, the agent automatically detects that it is running in an AWS environment.'
|
1889
1755
|
},
|
1890
|
-
:'
|
1891
|
-
:default
|
1892
|
-
:public
|
1893
|
-
:type
|
1756
|
+
:'utilization.detect_azure' => {
|
1757
|
+
:default => true,
|
1758
|
+
:public => true,
|
1759
|
+
:type => Boolean,
|
1894
1760
|
:allowed_from_server => false,
|
1895
|
-
:
|
1761
|
+
:dynamic_name => true,
|
1762
|
+
:description => 'If `true`, the agent automatically detects that it is running in an Azure environment.'
|
1896
1763
|
},
|
1897
|
-
:'
|
1898
|
-
:default
|
1899
|
-
:public
|
1900
|
-
:type
|
1764
|
+
:'utilization.detect_docker' => {
|
1765
|
+
:default => true,
|
1766
|
+
:public => true,
|
1767
|
+
:type => Boolean,
|
1901
1768
|
:allowed_from_server => false,
|
1902
|
-
:description => 'If `true`, the agent
|
1769
|
+
:description => 'If `true`, the agent automatically detects that it is running in Docker.'
|
1903
1770
|
},
|
1904
|
-
:'
|
1905
|
-
:default
|
1906
|
-
:public
|
1907
|
-
:type
|
1771
|
+
:'utilization.detect_gcp' => {
|
1772
|
+
:default => true,
|
1773
|
+
:public => true,
|
1774
|
+
:type => Boolean,
|
1908
1775
|
:allowed_from_server => false,
|
1909
|
-
:
|
1776
|
+
:dynamic_name => true,
|
1777
|
+
:description => 'If `true`, the agent automatically detects that it is running in an Google Cloud Platform environment.'
|
1910
1778
|
},
|
1911
|
-
:'
|
1912
|
-
:default
|
1913
|
-
:public
|
1914
|
-
:type
|
1779
|
+
:'utilization.detect_kubernetes' => {
|
1780
|
+
:default => true,
|
1781
|
+
:public => true,
|
1782
|
+
:type => Boolean,
|
1915
1783
|
:allowed_from_server => false,
|
1916
|
-
:description => 'If `true`, the agent
|
1784
|
+
:description => 'If `true`, the agent automatically detects that it is running in Kubernetes.'
|
1917
1785
|
},
|
1918
|
-
:'
|
1919
|
-
:default
|
1920
|
-
:public
|
1921
|
-
:type
|
1786
|
+
:'utilization.detect_pcf' => {
|
1787
|
+
:default => true,
|
1788
|
+
:public => true,
|
1789
|
+
:type => Boolean,
|
1922
1790
|
:allowed_from_server => false,
|
1923
|
-
:
|
1791
|
+
:dynamic_name => true,
|
1792
|
+
:description => 'If `true`, the agent automatically detects that it is running in a Pivotal Cloud Foundry environment.'
|
1924
1793
|
},
|
1925
|
-
|
1926
|
-
|
1927
|
-
:
|
1928
|
-
:
|
1929
|
-
:
|
1930
|
-
:
|
1931
|
-
:
|
1794
|
+
# Private
|
1795
|
+
:account_id => {
|
1796
|
+
:default => nil,
|
1797
|
+
:allow_nil => true,
|
1798
|
+
:public => false,
|
1799
|
+
:type => String,
|
1800
|
+
:allowed_from_server => true,
|
1801
|
+
:description => 'The account id associated with your application.'
|
1932
1802
|
},
|
1933
|
-
:
|
1934
|
-
:default
|
1935
|
-
:public
|
1936
|
-
:type
|
1937
|
-
:allowed_from_server =>
|
1938
|
-
:
|
1939
|
-
:description => 'Prefix of attributes to exclude from transaction traces. Allows `*` as wildcard at end.'
|
1803
|
+
:aggressive_keepalive => {
|
1804
|
+
:default => true,
|
1805
|
+
:public => false,
|
1806
|
+
:type => Boolean,
|
1807
|
+
:allowed_from_server => true,
|
1808
|
+
:description => 'If true, attempt to keep the TCP connection to the collector alive between harvests.'
|
1940
1809
|
},
|
1941
|
-
:
|
1942
|
-
:default
|
1943
|
-
:public
|
1944
|
-
:type
|
1810
|
+
:api_host => {
|
1811
|
+
:default => DefaultSource.api_host,
|
1812
|
+
:public => false,
|
1813
|
+
:type => String,
|
1945
1814
|
:allowed_from_server => false,
|
1946
|
-
:
|
1947
|
-
:description => 'Prefix of attributes to exclude from transaction events. Allows `*` as wildcard at end.'
|
1815
|
+
:description => 'API host for New Relic.'
|
1948
1816
|
},
|
1949
|
-
:
|
1950
|
-
:default
|
1951
|
-
:public
|
1952
|
-
:type
|
1817
|
+
:api_port => {
|
1818
|
+
:default => value_of(:port),
|
1819
|
+
:public => false,
|
1820
|
+
:type => Integer,
|
1953
1821
|
:allowed_from_server => false,
|
1954
|
-
:
|
1955
|
-
:description => 'Prefix of attributes to exclude from error collection. Allows `*` as wildcard at end.'
|
1822
|
+
:description => 'Port for the New Relic API host.'
|
1956
1823
|
},
|
1957
|
-
:
|
1958
|
-
:default
|
1959
|
-
:public
|
1960
|
-
:type
|
1961
|
-
:allowed_from_server =>
|
1962
|
-
:
|
1963
|
-
:description => 'Prefix of attributes to exclude from browser monitoring. Allows `*` as wildcard at end.'
|
1824
|
+
:application_id => {
|
1825
|
+
:default => '',
|
1826
|
+
:public => false,
|
1827
|
+
:type => String,
|
1828
|
+
:allowed_from_server => true,
|
1829
|
+
:description => 'Application ID for real user monitoring.'
|
1964
1830
|
},
|
1965
|
-
:
|
1966
|
-
:default
|
1967
|
-
:public
|
1968
|
-
:type
|
1969
|
-
:allowed_from_server =>
|
1970
|
-
:
|
1971
|
-
:description => 'Prefix of attributes to exclude from span events. Allows `*` as wildcard at end.'
|
1831
|
+
:beacon => {
|
1832
|
+
:default => '',
|
1833
|
+
:public => false,
|
1834
|
+
:type => String,
|
1835
|
+
:allowed_from_server => true,
|
1836
|
+
:description => 'Beacon for real user monitoring.'
|
1972
1837
|
},
|
1973
|
-
:
|
1974
|
-
:default
|
1975
|
-
:public
|
1976
|
-
:type
|
1977
|
-
:allowed_from_server =>
|
1978
|
-
:
|
1979
|
-
:description => 'Prefix of attributes to exclude from transaction segments. Allows `*` as wildcard at end.'
|
1838
|
+
:browser_key => {
|
1839
|
+
:default => '',
|
1840
|
+
:public => false,
|
1841
|
+
:type => String,
|
1842
|
+
:allowed_from_server => true,
|
1843
|
+
:description => 'Real user monitoring license key for the browser timing header.'
|
1980
1844
|
},
|
1981
|
-
:'
|
1982
|
-
:default
|
1983
|
-
:public
|
1984
|
-
:type
|
1985
|
-
:allowed_from_server =>
|
1986
|
-
:
|
1987
|
-
:description => 'Prefix of attributes to include in all destinations. Allows `*` as wildcard at end.'
|
1845
|
+
:'browser_monitoring.loader' => {
|
1846
|
+
:default => 'rum',
|
1847
|
+
:public => false,
|
1848
|
+
:type => String,
|
1849
|
+
:allowed_from_server => true,
|
1850
|
+
:description => 'Type of JavaScript agent loader to use for browser monitoring instrumentation.'
|
1988
1851
|
},
|
1989
|
-
:'
|
1990
|
-
:default
|
1991
|
-
:public
|
1992
|
-
:type
|
1852
|
+
:'browser_monitoring.loader_version' => {
|
1853
|
+
:default => '',
|
1854
|
+
:public => false,
|
1855
|
+
:type => String,
|
1856
|
+
:allowed_from_server => true,
|
1857
|
+
:description => 'Version of JavaScript agent loader (returned from the New Relic [collector](/docs/apm/new-relic-apm/getting-started/glossary#collector).)'
|
1858
|
+
},
|
1859
|
+
:'browser_monitoring.debug' => {
|
1860
|
+
:default => false,
|
1861
|
+
:public => false,
|
1862
|
+
:type => Boolean,
|
1863
|
+
:allowed_from_server => true,
|
1864
|
+
:description => 'Enable or disable debugging version of JavaScript agent loader for browser monitoring instrumentation.'
|
1865
|
+
},
|
1866
|
+
:'browser_monitoring.ssl_for_http' => {
|
1867
|
+
:default => nil,
|
1868
|
+
:allow_nil => true,
|
1869
|
+
:public => false,
|
1870
|
+
:type => Boolean,
|
1871
|
+
:allowed_from_server => true,
|
1872
|
+
:description => 'Enable or disable HTTPS instrumentation by JavaScript agent on HTTP pages.'
|
1873
|
+
},
|
1874
|
+
:compressed_content_encoding => {
|
1875
|
+
:default => 'gzip',
|
1876
|
+
:public => false,
|
1877
|
+
:type => String,
|
1993
1878
|
:allowed_from_server => false,
|
1994
|
-
:
|
1995
|
-
:description => 'Prefix of attributes to include in transaction traces. Allows `*` as wildcard at end.'
|
1879
|
+
:description => 'Encoding to use if data needs to be compressed. The options are deflate and gzip.'
|
1996
1880
|
},
|
1997
|
-
:
|
1998
|
-
:default
|
1999
|
-
:public
|
2000
|
-
:type
|
1881
|
+
:config_search_paths => {
|
1882
|
+
:default => DefaultSource.config_search_paths,
|
1883
|
+
:public => false,
|
1884
|
+
:type => Array,
|
2001
1885
|
:allowed_from_server => false,
|
2002
|
-
:
|
2003
|
-
:description => 'Prefix of attributes to include in transaction events. Allows `*` as wildcard at end.'
|
1886
|
+
:description => "An array of candidate locations for the agent's configuration file."
|
2004
1887
|
},
|
2005
|
-
:
|
2006
|
-
:default
|
2007
|
-
:public
|
2008
|
-
:type
|
1888
|
+
:cross_process_id => {
|
1889
|
+
:default => '',
|
1890
|
+
:public => false,
|
1891
|
+
:type => String,
|
1892
|
+
:allowed_from_server => true,
|
1893
|
+
:description => 'Cross process ID for cross-application tracing.'
|
1894
|
+
},
|
1895
|
+
:data_report_period => {
|
1896
|
+
:default => 60,
|
1897
|
+
:public => false,
|
1898
|
+
:type => Integer,
|
1899
|
+
:allowed_from_server => true,
|
1900
|
+
:description => 'Number of seconds betwixt connections to the New Relic data collection service.'
|
1901
|
+
},
|
1902
|
+
:dispatcher => {
|
1903
|
+
:default => DefaultSource.dispatcher,
|
1904
|
+
:public => false,
|
1905
|
+
:type => Symbol,
|
2009
1906
|
:allowed_from_server => false,
|
2010
|
-
:
|
2011
|
-
:description => 'Prefix of attributes to include in error collection. Allows `*` as wildcard at end.'
|
1907
|
+
:description => 'Autodetected application component that reports metrics to New Relic.'
|
2012
1908
|
},
|
2013
|
-
:
|
2014
|
-
:default
|
2015
|
-
:public
|
2016
|
-
:type
|
1909
|
+
:disable_harvest_thread => {
|
1910
|
+
:default => false,
|
1911
|
+
:public => false,
|
1912
|
+
:type => Boolean,
|
2017
1913
|
:allowed_from_server => false,
|
2018
|
-
:
|
2019
|
-
:description => 'Prefix of attributes to include in browser monitoring. Allows `*` as wildcard at end.'
|
1914
|
+
:description => 'Enable or disable the harvest thread.'
|
2020
1915
|
},
|
2021
|
-
:
|
2022
|
-
:default
|
2023
|
-
:public
|
2024
|
-
:type
|
1916
|
+
:disable_rails_middleware => {
|
1917
|
+
:default => false,
|
1918
|
+
:public => false,
|
1919
|
+
:type => Boolean,
|
2025
1920
|
:allowed_from_server => false,
|
2026
|
-
:
|
2027
|
-
:description => 'Prefix of attributes to include on span events. Allows `*` as wildcard at end.'
|
1921
|
+
:description => 'Internal name for controlling Rails 3+ middleware instrumentation'
|
2028
1922
|
},
|
2029
|
-
:
|
2030
|
-
:default
|
2031
|
-
:public
|
2032
|
-
:type
|
1923
|
+
:enabled => {
|
1924
|
+
:default => true,
|
1925
|
+
:public => false,
|
1926
|
+
:type => Boolean,
|
1927
|
+
:aliases => [:enable],
|
2033
1928
|
:allowed_from_server => false,
|
2034
|
-
:
|
2035
|
-
|
1929
|
+
:description => 'Enable or disable the agent.'
|
1930
|
+
},
|
1931
|
+
:encoding_key => {
|
1932
|
+
:default => '',
|
1933
|
+
:public => false,
|
1934
|
+
:type => String,
|
1935
|
+
:allowed_from_server => true,
|
1936
|
+
:description => 'Encoding key for cross-application tracing.'
|
1937
|
+
},
|
1938
|
+
:entity_guid => {
|
1939
|
+
:default => nil,
|
1940
|
+
:allow_nil => true,
|
1941
|
+
:public => false,
|
1942
|
+
:type => String,
|
1943
|
+
:allowed_from_server => true,
|
1944
|
+
:description => 'The [Entity GUID](/attribute-dictionary/span/entityguid) for the entity running your agent.'
|
1945
|
+
},
|
1946
|
+
:error_beacon => {
|
1947
|
+
:default => '',
|
1948
|
+
:public => false,
|
1949
|
+
:type => String,
|
1950
|
+
:allowed_from_server => true,
|
1951
|
+
:description => 'Error beacon for real user monitoring.'
|
2036
1952
|
},
|
2037
|
-
:
|
2038
|
-
:default
|
2039
|
-
:public
|
2040
|
-
:type
|
2041
|
-
:allowed_from_server =>
|
2042
|
-
:description => '
|
1953
|
+
:event_report_period => {
|
1954
|
+
:default => 60,
|
1955
|
+
:public => false,
|
1956
|
+
:type => Integer,
|
1957
|
+
:allowed_from_server => true,
|
1958
|
+
:description => 'Number of seconds betwixt connections to the New Relic event collection services.'
|
2043
1959
|
},
|
2044
|
-
:'
|
2045
|
-
:default
|
2046
|
-
:public
|
2047
|
-
:type
|
2048
|
-
:allowed_from_server => false,
|
1960
|
+
:'event_report_period.transaction_event_data' => {
|
1961
|
+
:default => 60,
|
1962
|
+
:public => false,
|
1963
|
+
:type => Integer,
|
2049
1964
|
:dynamic_name => true,
|
2050
|
-
:
|
1965
|
+
:allowed_from_server => true,
|
1966
|
+
:description => 'Number of seconds betwixt connections to the New Relic transaction event collection services.'
|
2051
1967
|
},
|
2052
|
-
:'
|
2053
|
-
:default
|
2054
|
-
:public
|
2055
|
-
:type
|
2056
|
-
:allowed_from_server => false,
|
1968
|
+
:'event_report_period.custom_event_data' => {
|
1969
|
+
:default => 60,
|
1970
|
+
:public => false,
|
1971
|
+
:type => Integer,
|
2057
1972
|
:dynamic_name => true,
|
2058
|
-
:
|
1973
|
+
:allowed_from_server => true,
|
1974
|
+
:description => 'Number of seconds betwixt connections to the New Relic custom event collection services.'
|
2059
1975
|
},
|
2060
|
-
:'
|
2061
|
-
:default
|
2062
|
-
:public
|
2063
|
-
:type
|
2064
|
-
:allowed_from_server => false,
|
1976
|
+
:'event_report_period.error_event_data' => {
|
1977
|
+
:default => 60,
|
1978
|
+
:public => false,
|
1979
|
+
:type => Integer,
|
2065
1980
|
:dynamic_name => true,
|
2066
|
-
:
|
1981
|
+
:allowed_from_server => true,
|
1982
|
+
:description => 'Number of seconds betwixt connections to the New Relic error event collection services.'
|
2067
1983
|
},
|
2068
|
-
:'
|
2069
|
-
:default
|
2070
|
-
:public
|
2071
|
-
:type
|
2072
|
-
:allowed_from_server => false,
|
1984
|
+
:'event_report_period.log_event_data' => {
|
1985
|
+
:default => 60,
|
1986
|
+
:public => false,
|
1987
|
+
:type => Integer,
|
2073
1988
|
:dynamic_name => true,
|
2074
|
-
:
|
2075
|
-
|
2076
|
-
:'utilization.detect_docker' => {
|
2077
|
-
:default => true,
|
2078
|
-
:public => true,
|
2079
|
-
:type => Boolean,
|
2080
|
-
:allowed_from_server => false,
|
2081
|
-
:description => 'If `true`, the agent automatically detects that it is running in Docker.'
|
2082
|
-
},
|
2083
|
-
:'utilization.detect_kubernetes' => {
|
2084
|
-
:default => true,
|
2085
|
-
:public => true,
|
2086
|
-
:type => Boolean,
|
2087
|
-
:allowed_from_server => false,
|
2088
|
-
:description => 'If `true`, the agent automatically detects that it is running in Kubernetes.'
|
1989
|
+
:allowed_from_server => true,
|
1990
|
+
:description => 'Number of seconds betwixt connections to the New Relic log event collection services.'
|
2089
1991
|
},
|
2090
|
-
:'
|
2091
|
-
:default
|
2092
|
-
:
|
2093
|
-
:
|
2094
|
-
:
|
2095
|
-
:allowed_from_server =>
|
2096
|
-
:description => '
|
1992
|
+
:'event_report_period.span_event_data' => {
|
1993
|
+
:default => 60,
|
1994
|
+
:public => false,
|
1995
|
+
:type => Integer,
|
1996
|
+
:dynamic_name => true,
|
1997
|
+
:allowed_from_server => true,
|
1998
|
+
:description => 'Number of seconds betwixt connections to the New Relic span event collection services.'
|
2097
1999
|
},
|
2098
|
-
:
|
2099
|
-
:default
|
2100
|
-
:
|
2101
|
-
:
|
2102
|
-
:type => Integer,
|
2000
|
+
:force_reconnect => {
|
2001
|
+
:default => false,
|
2002
|
+
:public => false,
|
2003
|
+
:type => Boolean,
|
2103
2004
|
:allowed_from_server => false,
|
2104
|
-
:description => '
|
2005
|
+
:description => 'Force a new connection to the server before running the worker loop. Creates a separate agent run and is recorded as a separate instance by the New Relic data collection service.'
|
2105
2006
|
},
|
2106
|
-
:
|
2107
|
-
:default
|
2108
|
-
:
|
2109
|
-
:
|
2110
|
-
:type => Integer,
|
2007
|
+
:framework => {
|
2008
|
+
:default => DefaultSource.framework,
|
2009
|
+
:public => false,
|
2010
|
+
:type => Symbol,
|
2111
2011
|
:allowed_from_server => false,
|
2112
|
-
:description => '
|
2012
|
+
:description => 'Autodetected application framework used to enable framework-specific functionality.'
|
2113
2013
|
},
|
2114
|
-
:
|
2115
|
-
:default
|
2116
|
-
:public
|
2117
|
-
:type
|
2014
|
+
:host => {
|
2015
|
+
:default => DefaultSource.host,
|
2016
|
+
:public => false,
|
2017
|
+
:type => String,
|
2118
2018
|
:allowed_from_server => false,
|
2119
|
-
:description =>
|
2019
|
+
:description => "URI for the New Relic data collection service."
|
2120
2020
|
},
|
2121
|
-
:'
|
2122
|
-
:default
|
2123
|
-
:public
|
2124
|
-
:type
|
2021
|
+
:'infinite_tracing.batching' => {
|
2022
|
+
:default => true,
|
2023
|
+
:public => true,
|
2024
|
+
:type => Boolean,
|
2125
2025
|
:allowed_from_server => false,
|
2126
|
-
:
|
2026
|
+
:external => :infinite_tracing,
|
2027
|
+
:description => "If `true` (the default), data sent to the trace observer is batched\ninstead of sending " \
|
2028
|
+
"each span individually."
|
2127
2029
|
},
|
2128
|
-
:'
|
2129
|
-
:default
|
2130
|
-
:public
|
2131
|
-
:type
|
2030
|
+
:'infinite_tracing.compression_level' => {
|
2031
|
+
:default => :high,
|
2032
|
+
:public => true,
|
2033
|
+
:type => Symbol,
|
2132
2034
|
:allowed_from_server => false,
|
2133
|
-
:
|
2035
|
+
:external => :infinite_tracing,
|
2036
|
+
:description => "Configure the compression level for data sent to the trace observer\nMay be one of " \
|
2037
|
+
"[none|low|medium|high]\n'high' is the default. Set the level to 'none' to disable compression"
|
2134
2038
|
},
|
2135
|
-
:
|
2136
|
-
:default =>
|
2137
|
-
:allow_nil => true,
|
2039
|
+
:js_agent_file => {
|
2040
|
+
:default => '',
|
2138
2041
|
:public => false,
|
2139
2042
|
:type => String,
|
2140
2043
|
:allowed_from_server => true,
|
2141
|
-
:description => '
|
2044
|
+
:description => 'JavaScript agent file for real user monitoring.'
|
2142
2045
|
},
|
2143
|
-
:
|
2144
|
-
:default =>
|
2145
|
-
:allow_nil => true,
|
2046
|
+
:js_agent_loader => {
|
2047
|
+
:default => '',
|
2146
2048
|
:public => false,
|
2147
2049
|
:type => String,
|
2148
2050
|
:allowed_from_server => true,
|
2149
|
-
:description => '
|
2051
|
+
:description => 'JavaScript agent loader content.'
|
2150
2052
|
},
|
2151
|
-
:
|
2152
|
-
:default
|
2153
|
-
:public
|
2154
|
-
:type
|
2053
|
+
:keep_alive_timeout => {
|
2054
|
+
:default => 60,
|
2055
|
+
:public => false,
|
2056
|
+
:type => Integer,
|
2155
2057
|
:allowed_from_server => true,
|
2156
|
-
:description => '
|
2058
|
+
:description => 'Timeout for keep alive on TCP connection to collector if supported by Ruby version. Only used in conjunction when aggressive_keepalive is enabled.'
|
2157
2059
|
},
|
2158
|
-
:
|
2060
|
+
:max_payload_size_in_bytes => {
|
2061
|
+
:default => 1000000,
|
2062
|
+
:public => false,
|
2063
|
+
:type => Integer,
|
2064
|
+
:allowed_from_server => true,
|
2065
|
+
:description => 'Maximum number of bytes to send to the New Relic data collection service.'
|
2066
|
+
},
|
2067
|
+
:normalize_json_string_encodings => {
|
2068
|
+
:default => true,
|
2069
|
+
:public => false,
|
2070
|
+
:type => Boolean,
|
2071
|
+
:allowed_from_server => false,
|
2072
|
+
:description => 'Controls whether to normalize string encodings prior to serializing data for the collector to JSON.'
|
2073
|
+
},
|
2074
|
+
:port => {
|
2075
|
+
:default => 443,
|
2076
|
+
:public => false,
|
2077
|
+
:type => Integer,
|
2078
|
+
:allowed_from_server => false,
|
2079
|
+
:description => 'Port for the New Relic data collection service.'
|
2080
|
+
},
|
2081
|
+
:primary_application_id => {
|
2159
2082
|
:default => nil,
|
2160
2083
|
:allow_nil => true,
|
2161
2084
|
:public => false,
|
2162
2085
|
:type => String,
|
2163
2086
|
:allowed_from_server => true,
|
2164
|
-
:description => '
|
2087
|
+
:description => 'The primary id associated with your application.'
|
2088
|
+
},
|
2089
|
+
:put_for_data_send => {
|
2090
|
+
:default => false,
|
2091
|
+
:public => false,
|
2092
|
+
:type => Boolean,
|
2093
|
+
:allowed_from_server => false,
|
2094
|
+
:description => 'Use HTTP PUT requests instead of POST.'
|
2095
|
+
},
|
2096
|
+
:report_instance_busy => {
|
2097
|
+
:default => true,
|
2098
|
+
:public => false,
|
2099
|
+
:type => Boolean,
|
2100
|
+
:allowed_from_server => false,
|
2101
|
+
:description => 'Enable or disable transmission of metrics recording the percentage of time application instances spend servicing requests (duty cycle metrics).'
|
2102
|
+
},
|
2103
|
+
:restart_thread_in_children => {
|
2104
|
+
:default => true,
|
2105
|
+
:public => false,
|
2106
|
+
:type => Boolean,
|
2107
|
+
:allowed_from_server => false,
|
2108
|
+
:description => 'Controls whether to check on running a transaction whether to respawn the harvest thread.'
|
2109
|
+
},
|
2110
|
+
:'resque.use_ruby_dns' => {
|
2111
|
+
:default => true,
|
2112
|
+
:public => false,
|
2113
|
+
:type => Boolean,
|
2114
|
+
:allowed_from_server => false,
|
2115
|
+
:description => 'Replace the libc DNS resolver with the all Ruby resolver Resolv'
|
2116
|
+
},
|
2117
|
+
:'rum.enabled' => {
|
2118
|
+
:default => true,
|
2119
|
+
:public => false,
|
2120
|
+
:type => Boolean,
|
2121
|
+
:allowed_from_server => true,
|
2122
|
+
:description => 'Enable or disable page load timing (sometimes referred to as real user monitoring or RUM).'
|
2165
2123
|
},
|
2166
2124
|
:sampling_target => {
|
2167
2125
|
:default => 10,
|
@@ -2177,53 +2135,93 @@ module NewRelic
|
|
2177
2135
|
:allowed_from_server => true,
|
2178
2136
|
:description => 'The period during which a target number of transactions should be marked as sampled.'
|
2179
2137
|
},
|
2180
|
-
:
|
2138
|
+
:send_environment_info => {
|
2181
2139
|
:default => true,
|
2182
|
-
:public =>
|
2140
|
+
:public => false,
|
2183
2141
|
:type => Boolean,
|
2184
|
-
:allowed_from_server =>
|
2185
|
-
:description => '
|
2142
|
+
:allowed_from_server => false,
|
2143
|
+
:description => 'Enable or disable transmission of application environment information to the New Relic data collection service.'
|
2186
2144
|
},
|
2187
|
-
:
|
2188
|
-
:default =>
|
2189
|
-
:public =>
|
2190
|
-
:type =>
|
2145
|
+
:simple_compression => {
|
2146
|
+
:default => false,
|
2147
|
+
:public => false,
|
2148
|
+
:type => Boolean,
|
2191
2149
|
:allowed_from_server => false,
|
2192
|
-
:
|
2193
|
-
:description => "Sets the maximum number of span events to buffer when streaming to the trace observer."
|
2150
|
+
:description => 'When enabled the agent will compress payloads destined for the collector, but will not pre-compress parts of the payload.'
|
2194
2151
|
},
|
2195
|
-
:
|
2196
|
-
:default =>
|
2197
|
-
:public =>
|
2152
|
+
:skip_ar_instrumentation => {
|
2153
|
+
:default => false,
|
2154
|
+
:public => false,
|
2155
|
+
:type => Boolean,
|
2156
|
+
:allowed_from_server => false,
|
2157
|
+
:description => 'Enable or disable active record instrumentation.'
|
2158
|
+
},
|
2159
|
+
:'synthetics.traces_limit' => {
|
2160
|
+
:default => 20,
|
2161
|
+
:public => false,
|
2198
2162
|
:type => Integer,
|
2199
2163
|
:allowed_from_server => true,
|
2200
|
-
:description => '
|
2164
|
+
:description => 'Maximum number of synthetics transaction traces to hold for a given harvest'
|
2201
2165
|
},
|
2202
|
-
:'
|
2166
|
+
:'synthetics.events_limit' => {
|
2167
|
+
:default => 200,
|
2168
|
+
:public => false,
|
2169
|
+
:type => Integer,
|
2170
|
+
:allowed_from_server => true,
|
2171
|
+
:description => 'Maximum number of synthetics transaction events to hold for a given harvest'
|
2172
|
+
},
|
2173
|
+
:test_mode => {
|
2203
2174
|
:default => false,
|
2204
|
-
:public =>
|
2175
|
+
:public => false,
|
2205
2176
|
:type => Boolean,
|
2177
|
+
:allowed_from_server => false,
|
2178
|
+
:description => 'Used in tests for the agent to start up, but not connect to the collector. Formerly used `developer_mode` in test config for this purpose.'
|
2179
|
+
},
|
2180
|
+
:'thread_profiler.max_profile_overhead' => {
|
2181
|
+
:default => 0.05,
|
2182
|
+
:public => false,
|
2183
|
+
:type => Float,
|
2206
2184
|
:allowed_from_server => true,
|
2207
|
-
:description =>
|
2185
|
+
:description => 'Maximum overhead percentage for thread profiling before agent reduces polling frequency'
|
2208
2186
|
},
|
2209
|
-
:
|
2210
|
-
:default =>
|
2211
|
-
:public =>
|
2187
|
+
:trusted_account_ids => {
|
2188
|
+
:default => [],
|
2189
|
+
:public => false,
|
2190
|
+
:type => Array,
|
2191
|
+
:allowed_from_server => true,
|
2192
|
+
:description => 'List of trusted New Relic account IDs for the purposes of cross-application tracing. Inbound requests from applications including cross-application headers that do not come from an account in this list will be ignored.'
|
2193
|
+
},
|
2194
|
+
:trusted_account_key => {
|
2195
|
+
:default => nil,
|
2196
|
+
:allow_nil => true,
|
2197
|
+
:public => false,
|
2198
|
+
:type => String,
|
2199
|
+
:allowed_from_server => true,
|
2200
|
+
:description => 'A shared key to validate that a distributed trace payload came from a trusted account.'
|
2201
|
+
},
|
2202
|
+
:'utilization.billing_hostname' => {
|
2203
|
+
:default => nil,
|
2204
|
+
:allow_nil => true,
|
2205
|
+
:public => false,
|
2212
2206
|
:type => String,
|
2213
2207
|
:allowed_from_server => false,
|
2214
|
-
:
|
2215
|
-
:description => "Configures the hostname for the Trace Observer Host. " \
|
2216
|
-
"When configured, enables tail-based sampling by sending all recorded spans " \
|
2217
|
-
"to a Trace Observer for further sampling decisions, irrespective of any usual " \
|
2218
|
-
"agent sampling decision."
|
2208
|
+
:description => 'The configured server name by a customer.'
|
2219
2209
|
},
|
2220
|
-
:'
|
2221
|
-
:default =>
|
2222
|
-
:
|
2210
|
+
:'utilization.logical_processors' => {
|
2211
|
+
:default => nil,
|
2212
|
+
:allow_nil => true,
|
2213
|
+
:public => false,
|
2223
2214
|
:type => Integer,
|
2224
2215
|
:allowed_from_server => false,
|
2225
|
-
:
|
2226
|
-
|
2216
|
+
:description => 'The total number of hyper-threaded execution contexts available.'
|
2217
|
+
},
|
2218
|
+
:'utilization.total_ram_mib' => {
|
2219
|
+
:default => nil,
|
2220
|
+
:allow_nil => true,
|
2221
|
+
:public => false,
|
2222
|
+
:type => Integer,
|
2223
|
+
:allowed_from_server => false,
|
2224
|
+
:description => 'This value represents the total amount of memory available to the host (not the process), in mebibytes (1024 squared or 1,048,576 bytes).'
|
2227
2225
|
}
|
2228
2226
|
}.freeze
|
2229
2227
|
end
|