newrelic_rpm 9.1.0 → 9.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.build_ignore +27 -0
- data/CHANGELOG.md +841 -7
- data/CONTRIBUTING.md +2 -9
- data/README.md +25 -22
- data/Rakefile +2 -2
- data/bin/newrelic +3 -9
- data/bin/newrelic_rpm +15 -0
- data/init.rb +2 -2
- data/lib/boot/strap.rb +102 -0
- data/lib/new_relic/agent/agent.rb +11 -2
- data/lib/new_relic/agent/agent_helpers/connect.rb +13 -8
- data/lib/new_relic/agent/agent_helpers/harvest.rb +3 -0
- data/lib/new_relic/agent/agent_helpers/shutdown.rb +4 -1
- data/lib/new_relic/agent/agent_helpers/special_startup.rb +1 -1
- data/lib/new_relic/agent/agent_helpers/start_worker_thread.rb +4 -3
- data/lib/new_relic/agent/agent_helpers/startup.rb +11 -3
- data/lib/new_relic/agent/agent_logger.rb +3 -1
- data/lib/new_relic/agent/attribute_filter.rb +3 -3
- data/lib/new_relic/agent/attribute_pre_filtering.rb +109 -0
- data/lib/new_relic/agent/aws.rb +68 -0
- data/lib/new_relic/agent/configuration/default_source.rb +918 -166
- data/lib/new_relic/agent/configuration/environment_source.rb +15 -3
- data/lib/new_relic/agent/configuration/high_security_source.rb +1 -0
- data/lib/new_relic/agent/configuration/manager.rb +72 -11
- data/lib/new_relic/agent/configuration/security_policy_source.rb +11 -0
- data/lib/new_relic/agent/configuration/yaml_source.rb +22 -2
- data/lib/new_relic/agent/connect/request_builder.rb +1 -1
- data/lib/new_relic/agent/custom_event_aggregator.rb +27 -1
- data/lib/new_relic/agent/database/obfuscation_helpers.rb +11 -11
- data/lib/new_relic/agent/database/obfuscator.rb +1 -0
- data/lib/new_relic/agent/database.rb +41 -1
- data/lib/new_relic/agent/database_adapter.rb +1 -1
- data/lib/new_relic/agent/datastores/mongo/metric_translator.rb +1 -1
- data/lib/new_relic/agent/datastores/redis.rb +1 -1
- data/lib/new_relic/agent/distributed_tracing/cross_app_tracing.rb +1 -1
- data/lib/new_relic/agent/distributed_tracing/distributed_trace_payload.rb +4 -8
- data/lib/new_relic/agent/distributed_tracing.rb +5 -3
- data/lib/new_relic/agent/error_collector.rb +40 -11
- data/lib/new_relic/agent/event_loop.rb +1 -1
- data/lib/new_relic/agent/external.rb +2 -0
- data/lib/new_relic/agent/harvester.rb +1 -1
- data/lib/new_relic/agent/health_check.rb +136 -0
- data/lib/new_relic/agent/http_clients/abstract.rb +4 -0
- data/lib/new_relic/agent/http_clients/async_http_wrappers.rb +80 -0
- data/lib/new_relic/agent/http_clients/curb_wrappers.rb +1 -3
- data/lib/new_relic/agent/http_clients/ethon_wrappers.rb +109 -0
- data/lib/new_relic/agent/http_clients/excon_wrappers.rb +0 -3
- data/lib/new_relic/agent/http_clients/http_rb_wrappers.rb +1 -3
- data/lib/new_relic/agent/http_clients/httpclient_wrappers.rb +0 -3
- data/lib/new_relic/agent/http_clients/httpx_wrappers.rb +91 -0
- data/lib/new_relic/agent/http_clients/net_http_wrappers.rb +1 -4
- data/lib/new_relic/agent/http_clients/typhoeus_wrappers.rb +0 -3
- data/lib/new_relic/agent/http_clients/uri_util.rb +1 -1
- data/lib/new_relic/agent/instrumentation/action_controller_other_subscriber.rb +1 -1
- data/lib/new_relic/agent/instrumentation/action_dispatch.rb +1 -1
- data/lib/new_relic/agent/instrumentation/action_dispatch_subscriber.rb +1 -1
- data/lib/new_relic/agent/instrumentation/action_mailbox.rb +1 -1
- data/lib/new_relic/agent/instrumentation/action_mailer.rb +1 -1
- data/lib/new_relic/agent/instrumentation/active_job.rb +1 -1
- data/lib/new_relic/agent/instrumentation/active_job_subscriber.rb +6 -2
- data/lib/new_relic/agent/instrumentation/active_merchant.rb +3 -16
- data/lib/new_relic/agent/instrumentation/active_record.rb +8 -13
- data/lib/new_relic/agent/instrumentation/active_record_helper.rb +8 -5
- data/lib/new_relic/agent/instrumentation/active_record_notifications.rb +13 -10
- data/lib/new_relic/agent/instrumentation/active_record_prepend.rb +2 -2
- data/lib/new_relic/agent/instrumentation/active_record_subscriber.rb +9 -16
- data/lib/new_relic/agent/instrumentation/active_support_broadcast_logger/chain.rb +69 -0
- data/lib/new_relic/agent/instrumentation/active_support_broadcast_logger/instrumentation.rb +17 -0
- data/lib/new_relic/agent/instrumentation/active_support_broadcast_logger/prepend.rb +37 -0
- data/lib/new_relic/agent/instrumentation/active_support_broadcast_logger.rb +21 -0
- data/lib/new_relic/agent/instrumentation/active_support_logger/instrumentation.rb +4 -0
- data/lib/new_relic/agent/instrumentation/active_support_logger.rb +3 -3
- data/lib/new_relic/agent/instrumentation/async_http/chain.rb +23 -0
- data/lib/new_relic/agent/instrumentation/async_http/instrumentation.rb +37 -0
- data/lib/new_relic/agent/instrumentation/async_http/prepend.rb +15 -0
- data/lib/new_relic/agent/instrumentation/async_http.rb +27 -0
- data/lib/new_relic/agent/instrumentation/aws_sdk_firehose/chain.rb +21 -0
- data/lib/new_relic/agent/instrumentation/aws_sdk_firehose/instrumentation.rb +66 -0
- data/lib/new_relic/agent/instrumentation/aws_sdk_firehose/prepend.rb +15 -0
- data/lib/new_relic/agent/instrumentation/aws_sdk_firehose.rb +22 -0
- data/lib/new_relic/agent/instrumentation/aws_sdk_kinesis/chain.rb +21 -0
- data/lib/new_relic/agent/instrumentation/aws_sdk_kinesis/instrumentation.rb +91 -0
- data/lib/new_relic/agent/instrumentation/aws_sdk_kinesis/prepend.rb +15 -0
- data/lib/new_relic/agent/instrumentation/aws_sdk_kinesis.rb +22 -0
- data/lib/new_relic/agent/instrumentation/aws_sdk_lambda/chain.rb +33 -0
- data/lib/new_relic/agent/instrumentation/aws_sdk_lambda/instrumentation.rb +93 -0
- data/lib/new_relic/agent/instrumentation/aws_sdk_lambda/prepend.rb +23 -0
- data/lib/new_relic/agent/instrumentation/aws_sdk_lambda.rb +23 -0
- data/lib/new_relic/agent/instrumentation/aws_sqs/chain.rb +37 -0
- data/lib/new_relic/agent/instrumentation/aws_sqs/instrumentation.rb +67 -0
- data/lib/new_relic/agent/instrumentation/aws_sqs/prepend.rb +21 -0
- data/lib/new_relic/agent/instrumentation/aws_sqs.rb +23 -0
- data/lib/new_relic/agent/instrumentation/bunny/chain.rb +1 -1
- data/lib/new_relic/agent/instrumentation/bunny/instrumentation.rb +23 -0
- data/lib/new_relic/agent/instrumentation/bunny.rb +4 -5
- data/lib/new_relic/agent/instrumentation/concurrent_ruby/chain.rb +1 -1
- data/lib/new_relic/agent/instrumentation/concurrent_ruby/instrumentation.rb +3 -4
- data/lib/new_relic/agent/instrumentation/concurrent_ruby/prepend.rb +1 -1
- data/lib/new_relic/agent/instrumentation/concurrent_ruby.rb +2 -3
- data/lib/new_relic/agent/instrumentation/controller_instrumentation.rb +5 -2
- data/lib/new_relic/agent/instrumentation/curb/instrumentation.rb +4 -0
- data/lib/new_relic/agent/instrumentation/curb.rb +4 -5
- data/lib/new_relic/agent/instrumentation/delayed_job/chain.rb +1 -0
- data/lib/new_relic/agent/instrumentation/delayed_job/instrumentation.rb +3 -0
- data/lib/new_relic/agent/instrumentation/delayed_job_instrumentation.rb +0 -23
- data/lib/new_relic/agent/instrumentation/dynamodb/chain.rb +27 -0
- data/lib/new_relic/agent/instrumentation/dynamodb/instrumentation.rb +64 -0
- data/lib/new_relic/agent/instrumentation/dynamodb/prepend.rb +19 -0
- data/lib/new_relic/agent/instrumentation/dynamodb.rb +23 -0
- data/lib/new_relic/agent/instrumentation/elasticsearch/chain.rb +2 -3
- data/lib/new_relic/agent/instrumentation/elasticsearch/instrumentation.rb +65 -10
- data/lib/new_relic/agent/instrumentation/elasticsearch.rb +2 -4
- data/lib/new_relic/agent/instrumentation/ethon/chain.rb +39 -0
- data/lib/new_relic/agent/instrumentation/ethon/instrumentation.rb +105 -0
- data/lib/new_relic/agent/instrumentation/ethon/prepend.rb +35 -0
- data/lib/new_relic/agent/instrumentation/ethon.rb +35 -0
- data/lib/new_relic/agent/instrumentation/excon/middleware.rb +3 -0
- data/lib/new_relic/agent/instrumentation/excon.rb +1 -17
- data/lib/new_relic/agent/instrumentation/fiber/chain.rb +11 -4
- data/lib/new_relic/agent/instrumentation/fiber/instrumentation.rb +2 -6
- data/lib/new_relic/agent/instrumentation/fiber/prepend.rb +10 -3
- data/lib/new_relic/agent/instrumentation/fiber.rb +1 -3
- data/lib/new_relic/agent/instrumentation/grape/instrumentation.rb +4 -3
- data/lib/new_relic/agent/instrumentation/grape.rb +1 -1
- data/lib/new_relic/agent/instrumentation/grpc/client/chain.rb +1 -1
- data/lib/new_relic/agent/instrumentation/grpc/client/instrumentation.rb +5 -2
- data/lib/new_relic/agent/instrumentation/grpc/client/prepend.rb +1 -1
- data/lib/new_relic/agent/instrumentation/grpc/client/request_wrapper.rb +1 -1
- data/lib/new_relic/agent/instrumentation/grpc/server/instrumentation.rb +5 -1
- data/lib/new_relic/agent/instrumentation/grpc_client.rb +2 -2
- data/lib/new_relic/agent/instrumentation/grpc_server.rb +2 -2
- data/lib/new_relic/agent/instrumentation/httpclient/instrumentation.rb +4 -0
- data/lib/new_relic/agent/instrumentation/httpclient.rb +1 -5
- data/lib/new_relic/agent/instrumentation/httprb/instrumentation.rb +4 -0
- data/lib/new_relic/agent/instrumentation/httprb.rb +0 -1
- data/lib/new_relic/agent/instrumentation/httpx/chain.rb +20 -0
- data/lib/new_relic/agent/instrumentation/httpx/instrumentation.rb +51 -0
- data/lib/new_relic/agent/instrumentation/httpx/prepend.rb +15 -0
- data/lib/new_relic/agent/instrumentation/httpx.rb +23 -0
- data/lib/new_relic/agent/instrumentation/logger/instrumentation.rb +3 -0
- data/lib/new_relic/agent/instrumentation/logger.rb +1 -3
- data/lib/new_relic/agent/instrumentation/logstasher/chain.rb +21 -0
- data/lib/new_relic/agent/instrumentation/logstasher/instrumentation.rb +24 -0
- data/lib/new_relic/agent/instrumentation/logstasher/prepend.rb +13 -0
- data/lib/new_relic/agent/instrumentation/logstasher.rb +25 -0
- data/lib/new_relic/agent/instrumentation/memcache/dalli.rb +4 -2
- data/lib/new_relic/agent/instrumentation/memcache/helper.rb +2 -2
- data/lib/new_relic/agent/instrumentation/memcache/instrumentation.rb +13 -4
- data/lib/new_relic/agent/instrumentation/memcache/prepend.rb +4 -2
- data/lib/new_relic/agent/instrumentation/memcache.rb +4 -5
- data/lib/new_relic/agent/instrumentation/mongodb_command_subscriber.rb +3 -5
- data/lib/new_relic/agent/instrumentation/net_http/instrumentation.rb +13 -3
- data/lib/new_relic/agent/instrumentation/net_http.rb +2 -1
- data/lib/new_relic/agent/instrumentation/notifications_subscriber.rb +4 -2
- data/lib/new_relic/agent/instrumentation/opensearch/chain.rb +21 -0
- data/lib/new_relic/agent/instrumentation/opensearch/instrumentation.rb +66 -0
- data/lib/new_relic/agent/instrumentation/opensearch/prepend.rb +13 -0
- data/lib/new_relic/agent/instrumentation/opensearch.rb +23 -0
- data/lib/new_relic/agent/instrumentation/padrino/instrumentation.rb +4 -0
- data/lib/new_relic/agent/instrumentation/padrino.rb +3 -3
- data/lib/new_relic/agent/instrumentation/queue_time.rb +1 -1
- data/lib/new_relic/agent/instrumentation/rack/instrumentation.rb +9 -0
- data/lib/new_relic/agent/instrumentation/rails3/action_controller.rb +4 -0
- data/lib/new_relic/agent/instrumentation/rails_notifications/action_cable.rb +1 -1
- data/lib/new_relic/agent/instrumentation/rails_notifications/action_controller.rb +10 -5
- data/lib/new_relic/agent/instrumentation/rake/instrumentation.rb +4 -0
- data/lib/new_relic/agent/instrumentation/rake.rb +1 -2
- data/lib/new_relic/agent/instrumentation/rdkafka/chain.rb +72 -0
- data/lib/new_relic/agent/instrumentation/rdkafka/instrumentation.rb +70 -0
- data/lib/new_relic/agent/instrumentation/rdkafka/prepend.rb +67 -0
- data/lib/new_relic/agent/instrumentation/rdkafka.rb +25 -0
- data/lib/new_relic/agent/instrumentation/redis/cluster_middleware.rb +26 -0
- data/lib/new_relic/agent/instrumentation/redis/constants.rb +2 -2
- data/lib/new_relic/agent/instrumentation/redis/instrumentation.rb +18 -11
- data/lib/new_relic/agent/instrumentation/redis/middleware.rb +3 -0
- data/lib/new_relic/agent/instrumentation/redis.rb +11 -5
- data/lib/new_relic/agent/instrumentation/resque/instrumentation.rb +4 -0
- data/lib/new_relic/agent/instrumentation/resque.rb +8 -6
- data/lib/new_relic/agent/instrumentation/roda/chain.rb +43 -0
- data/lib/new_relic/agent/instrumentation/roda/ignorer.rb +45 -0
- data/lib/new_relic/agent/instrumentation/roda/instrumentation.rb +68 -0
- data/lib/new_relic/agent/instrumentation/roda/prepend.rb +24 -0
- data/lib/new_relic/agent/instrumentation/roda/roda_transaction_namer.rb +29 -0
- data/lib/new_relic/agent/instrumentation/roda.rb +36 -0
- data/lib/new_relic/agent/instrumentation/ruby_kafka/chain.rb +55 -0
- data/lib/new_relic/agent/instrumentation/ruby_kafka/instrumentation.rb +67 -0
- data/lib/new_relic/agent/instrumentation/ruby_kafka/prepend.rb +60 -0
- data/lib/new_relic/agent/instrumentation/ruby_kafka.rb +25 -0
- data/lib/new_relic/agent/instrumentation/ruby_openai/chain.rb +36 -0
- data/lib/new_relic/agent/instrumentation/ruby_openai/instrumentation.rb +196 -0
- data/lib/new_relic/agent/instrumentation/ruby_openai/prepend.rb +20 -0
- data/lib/new_relic/agent/instrumentation/ruby_openai.rb +35 -0
- data/lib/new_relic/agent/instrumentation/sequel.rb +1 -1
- data/lib/new_relic/agent/instrumentation/sidekiq/client.rb +4 -0
- data/lib/new_relic/agent/instrumentation/sidekiq/extensions/delay_extensions.rb +24 -0
- data/lib/new_relic/agent/instrumentation/sidekiq/extensions/delayed_class.rb +2 -2
- data/lib/new_relic/agent/instrumentation/sidekiq/server.rb +26 -3
- data/lib/new_relic/agent/instrumentation/sidekiq.rb +13 -16
- data/lib/new_relic/agent/instrumentation/sinatra/ignorer.rb +1 -1
- data/lib/new_relic/agent/instrumentation/sinatra/instrumentation.rb +4 -0
- data/lib/new_relic/agent/instrumentation/sinatra/transaction_namer.rb +1 -3
- data/lib/new_relic/agent/instrumentation/sinatra.rb +3 -19
- data/lib/new_relic/agent/instrumentation/stripe.rb +28 -0
- data/lib/new_relic/agent/instrumentation/stripe_subscriber.rb +98 -0
- data/lib/new_relic/agent/instrumentation/thread/chain.rb +1 -1
- data/lib/new_relic/agent/instrumentation/thread/instrumentation.rb +1 -5
- data/lib/new_relic/agent/instrumentation/thread/prepend.rb +1 -1
- data/lib/new_relic/agent/instrumentation/thread.rb +0 -2
- data/lib/new_relic/agent/instrumentation/tilt/instrumentation.rb +4 -0
- data/lib/new_relic/agent/instrumentation/tilt.rb +0 -4
- data/lib/new_relic/agent/instrumentation/typhoeus/instrumentation.rb +7 -3
- data/lib/new_relic/agent/instrumentation/typhoeus.rb +0 -1
- data/lib/new_relic/agent/instrumentation/view_component/chain.rb +21 -0
- data/lib/new_relic/agent/instrumentation/view_component/instrumentation.rb +45 -0
- data/lib/{tasks/instrumentation_generator/templates/instrumentation.tt → new_relic/agent/instrumentation/view_component/prepend.rb} +4 -4
- data/lib/new_relic/agent/instrumentation/view_component.rb +24 -0
- data/lib/new_relic/agent/javascript_instrumentor.rb +2 -4
- data/lib/new_relic/agent/llm/chat_completion_message.rb +25 -0
- data/lib/new_relic/agent/llm/chat_completion_summary.rb +66 -0
- data/lib/new_relic/agent/llm/embedding.rb +60 -0
- data/lib/new_relic/agent/llm/llm_event.rb +95 -0
- data/lib/new_relic/agent/llm/response_headers.rb +80 -0
- data/lib/new_relic/agent/llm.rb +49 -0
- data/lib/new_relic/agent/local_log_decorator.rb +20 -3
- data/lib/new_relic/agent/log_event_aggregator.rb +149 -26
- data/lib/new_relic/agent/log_event_attributes.rb +115 -0
- data/lib/new_relic/agent/logging.rb +5 -5
- data/lib/new_relic/agent/messaging.rb +18 -7
- data/lib/new_relic/agent/method_tracer.rb +4 -1
- data/lib/new_relic/agent/method_tracer_helpers.rb +26 -5
- data/lib/new_relic/agent/monitors/inbound_request_monitor.rb +1 -1
- data/lib/new_relic/agent/monitors/synthetics_monitor.rb +12 -1
- data/lib/new_relic/agent/new_relic_service/encoders.rb +2 -2
- data/lib/new_relic/agent/new_relic_service/json_marshaller.rb +2 -2
- data/lib/new_relic/agent/new_relic_service.rb +61 -28
- data/lib/new_relic/agent/obfuscator.rb +0 -2
- data/lib/new_relic/agent/opentelemetry/context/propagation/trace_propagator.rb +66 -0
- data/lib/new_relic/agent/opentelemetry/context/propagation.rb +15 -0
- data/lib/{tasks/instrumentation_generator/templates/Envfile.tt → new_relic/agent/opentelemetry/context.rb} +9 -5
- data/lib/new_relic/agent/opentelemetry/trace/span.rb +31 -0
- data/lib/new_relic/agent/opentelemetry/trace/tracer.rb +129 -0
- data/lib/new_relic/agent/opentelemetry/trace/tracer_provider.rb +18 -0
- data/lib/new_relic/agent/opentelemetry/trace.rb +15 -0
- data/lib/new_relic/agent/opentelemetry/transaction_patch.rb +69 -0
- data/lib/new_relic/agent/opentelemetry_bridge.rb +32 -0
- data/lib/new_relic/agent/parameter_filtering.rb +1 -1
- data/lib/new_relic/agent/pipe_channel_manager.rb +2 -2
- data/lib/new_relic/agent/pipe_service.rb +1 -1
- data/lib/new_relic/agent/rules_engine/segment_terms_rule.rb +1 -2
- data/lib/new_relic/agent/rules_engine.rb +1 -1
- data/lib/new_relic/agent/sampler.rb +1 -0
- data/lib/new_relic/agent/samplers/cpu_sampler.rb +1 -1
- data/lib/new_relic/agent/samplers/memory_sampler.rb +1 -1
- data/lib/new_relic/agent/serverless_handler.rb +406 -0
- data/lib/new_relic/agent/serverless_handler_event_sources.json +155 -0
- data/lib/new_relic/agent/serverless_handler_event_sources.rb +49 -0
- data/lib/new_relic/agent/span_event_primitive.rb +32 -15
- data/lib/new_relic/agent/sql_sampler.rb +0 -1
- data/lib/new_relic/agent/system_info.rb +40 -0
- data/lib/new_relic/agent/threading/agent_thread.rb +1 -2
- data/lib/new_relic/agent/threading/backtrace_node.rb +10 -1
- data/lib/new_relic/agent/tracer.rb +16 -16
- data/lib/new_relic/agent/transaction/abstract_segment.rb +103 -41
- data/lib/new_relic/agent/transaction/datastore_segment.rb +1 -1
- data/lib/new_relic/agent/transaction/distributed_tracer.rb +3 -3
- data/lib/new_relic/agent/transaction/distributed_tracing.rb +7 -8
- data/lib/new_relic/agent/transaction/external_request_segment.rb +5 -12
- data/lib/new_relic/agent/transaction/message_broker_segment.rb +5 -3
- data/lib/new_relic/agent/transaction/request_attributes.rb +54 -11
- data/lib/new_relic/agent/transaction/trace_context.rb +34 -5
- data/lib/new_relic/agent/transaction/tracing.rb +20 -4
- data/lib/new_relic/agent/transaction.rb +38 -13
- data/lib/new_relic/agent/transaction_error_primitive.rb +39 -19
- data/lib/new_relic/agent/transaction_event_primitive.rb +19 -0
- data/lib/new_relic/agent/transaction_time_aggregator.rb +1 -1
- data/lib/new_relic/agent/utilization/ecs.rb +22 -0
- data/lib/new_relic/agent/utilization/ecs_v4.rb +22 -0
- data/lib/new_relic/agent/utilization/gcp.rb +1 -3
- data/lib/new_relic/agent/utilization/vendor.rb +5 -7
- data/lib/new_relic/agent/utilization_data.rb +40 -5
- data/lib/new_relic/agent/vm/{mri_vm.rb → c_ruby_vm.rb} +10 -18
- data/lib/new_relic/agent/vm.rb +2 -2
- data/lib/new_relic/agent/worker_loop.rb +1 -1
- data/lib/new_relic/agent.rb +286 -17
- data/lib/new_relic/base64.rb +25 -0
- data/lib/new_relic/cli/command.rb +6 -3
- data/lib/new_relic/constants.rb +8 -0
- data/lib/new_relic/control/class_methods.rb +1 -7
- data/lib/new_relic/control/frameworks/grape.rb +14 -0
- data/lib/new_relic/control/frameworks/padrino.rb +14 -0
- data/lib/new_relic/control/frameworks/rails.rb +17 -5
- data/lib/new_relic/control/frameworks/rails4.rb +1 -3
- data/lib/new_relic/control/frameworks/roda.rb +20 -0
- data/lib/new_relic/control/instance_methods.rb +13 -0
- data/lib/new_relic/control/instrumentation.rb +2 -16
- data/lib/new_relic/control/private_instance_methods.rb +4 -0
- data/lib/new_relic/control/security_interface.rb +57 -0
- data/lib/new_relic/control.rb +1 -1
- data/lib/new_relic/dependency_detection.rb +25 -13
- data/lib/new_relic/environment_report.rb +2 -2
- data/lib/new_relic/helper.rb +22 -0
- data/lib/new_relic/language_support.rb +12 -1
- data/lib/new_relic/latest_changes.rb +1 -1
- data/lib/new_relic/local_environment.rb +31 -18
- data/lib/new_relic/noticed_error.rb +5 -2
- data/lib/new_relic/rack/agent_hooks.rb +1 -1
- data/lib/new_relic/rack/agent_middleware.rb +0 -16
- data/lib/new_relic/rack/browser_monitoring.rb +29 -13
- data/lib/new_relic/supportability_helper.rb +5 -1
- data/lib/new_relic/thread_local_storage.rb +31 -0
- data/lib/new_relic/traced_thread.rb +2 -3
- data/lib/new_relic/version.rb +1 -1
- data/lib/sequel/extensions/new_relic_instrumentation.rb +4 -3
- data/lib/tasks/bump_version.rake +21 -0
- data/lib/tasks/config.rake +11 -5
- data/lib/tasks/coverage_report.rake +1 -1
- data/lib/tasks/gha.rake +31 -0
- data/lib/tasks/helpers/config.html.erb +94 -0
- data/lib/tasks/helpers/format.rb +11 -7
- data/lib/tasks/helpers/newrelicyml.rb +211 -0
- data/lib/tasks/helpers/version_bump.rb +62 -0
- data/lib/tasks/newrelic.rb +1 -0
- data/lib/tasks/newrelicyml.rake +13 -0
- data/lib/tasks/tests.rake +71 -0
- data/newrelic.yml +657 -251
- data/newrelic_rpm.gemspec +17 -10
- data/test/agent_helper.rb +38 -4
- metadata +230 -44
- data/.gitignore +0 -43
- data/.project +0 -23
- data/.rubocop.yml +0 -1909
- data/.rubocop_todo.yml +0 -61
- data/.simplecov +0 -15
- data/.snyk +0 -11
- data/.yardopts +0 -27
- data/Brewfile +0 -12
- data/DOCKER.md +0 -167
- data/Dockerfile +0 -10
- data/Guardfile +0 -26
- data/bin/newrelic_cmd +0 -6
- data/config/database.yml +0 -5
- data/config.dot +0 -278
- data/docker-compose.yml +0 -107
- data/lefthook.yml +0 -9
- data/lib/new_relic/agent/range_extensions.rb +0 -27
- data/lib/tasks/helpers/removers.rb +0 -33
- data/lib/tasks/instrumentation_generator/README.md +0 -63
- data/lib/tasks/instrumentation_generator/TODO.md +0 -33
- data/lib/tasks/instrumentation_generator/instrumentation.thor +0 -121
- data/lib/tasks/instrumentation_generator/templates/chain.tt +0 -22
- data/lib/tasks/instrumentation_generator/templates/chain_method.tt +0 -8
- data/lib/tasks/instrumentation_generator/templates/dependency_detection.tt +0 -29
- data/lib/tasks/instrumentation_generator/templates/instrumentation_method.tt +0 -3
- data/lib/tasks/instrumentation_generator/templates/newrelic.yml.tt +0 -19
- data/lib/tasks/instrumentation_generator/templates/prepend.tt +0 -13
- data/lib/tasks/instrumentation_generator/templates/prepend_method.tt +0 -3
- data/lib/tasks/instrumentation_generator/templates/test.tt +0 -15
- data/lib/tasks/multiverse.rake +0 -6
- data/lib/tasks/multiverse.rb +0 -83
data/newrelic.yml
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#
|
|
2
|
-
# This file configures the New Relic
|
|
2
|
+
# This file configures the New Relic agent. New Relic monitors Ruby, Java,
|
|
3
3
|
# .NET, PHP, Python, Node, and Go applications with deep visibility and low
|
|
4
4
|
# overhead. For more information, visit www.newrelic.com.
|
|
5
5
|
|
|
@@ -26,49 +26,94 @@ common: &default_settings
|
|
|
26
26
|
# All of the following configuration options are optional. Review them, and
|
|
27
27
|
# uncomment or edit them if they appear relevant to your application needs.
|
|
28
28
|
|
|
29
|
-
# An array of ActiveSupport custom
|
|
30
|
-
#
|
|
31
|
-
#
|
|
32
|
-
#
|
|
33
|
-
#
|
|
34
|
-
# active_support_custom_events_names:
|
|
35
|
-
|
|
36
|
-
# If
|
|
37
|
-
#
|
|
29
|
+
# An array of ActiveSupport custom event names to subscribe to and instrument.
|
|
30
|
+
# For example,
|
|
31
|
+
# - one.custom.event
|
|
32
|
+
# - another.event
|
|
33
|
+
# - a.third.event
|
|
34
|
+
# active_support_custom_events_names: []
|
|
35
|
+
|
|
36
|
+
# If false, all LLM instrumentation (OpenAI only for now) will be disabled and
|
|
37
|
+
# no metrics, events, or spans will be sent. AI Monitoring is automatically
|
|
38
|
+
# disabled if high_security mode is enabled.
|
|
39
|
+
# ai_monitoring.enabled: false
|
|
40
|
+
|
|
41
|
+
# If false, LLM instrumentation (OpenAI only for now) will not capture input and
|
|
42
|
+
# output content on specific LLM events.
|
|
43
|
+
#
|
|
44
|
+
# The excluded attributes include:
|
|
45
|
+
# - content from LlmChatCompletionMessage events
|
|
46
|
+
# - input from LlmEmbedding events
|
|
47
|
+
#
|
|
48
|
+
# This is an optional security setting to prevent recording sensitive data sent
|
|
49
|
+
# to and received from your LLMs.
|
|
50
|
+
# ai_monitoring.record_content.enabled: true
|
|
51
|
+
|
|
52
|
+
# If true, enables capture of all HTTP request headers for all destinations.
|
|
53
|
+
# allow_all_headers: false
|
|
54
|
+
|
|
55
|
+
# Your New Relic userKey. Required when using the New Relic REST API v2 to
|
|
56
|
+
# record deployments using the newrelic deployments command.
|
|
57
|
+
# api_key: ""
|
|
58
|
+
|
|
59
|
+
# If true, enables log decoration and the collection of log events and metrics.
|
|
38
60
|
# application_logging.enabled: true
|
|
39
61
|
|
|
40
|
-
#
|
|
62
|
+
# A hash with key/value pairs to add as custom attributes to all log events
|
|
63
|
+
# forwarded to New Relic. If sending using an environment variable, the value
|
|
64
|
+
# must be formatted like: "key1=value1,key2=value2"
|
|
65
|
+
# application_logging.forwarding.custom_attributes: {}
|
|
66
|
+
|
|
67
|
+
# If true, the agent captures log records emitted by your application.
|
|
41
68
|
# application_logging.forwarding.enabled: true
|
|
42
69
|
|
|
70
|
+
# If true, the agent attaches labels to log records.
|
|
71
|
+
# application_logging.forwarding.labels.enabled: false
|
|
72
|
+
|
|
73
|
+
# A case-insensitive array or comma-delimited string containing the labels to
|
|
74
|
+
# exclude from log records.
|
|
75
|
+
# application_logging.forwarding.labels.exclude: []
|
|
76
|
+
|
|
77
|
+
# Sets the minimum level a log event must have to be forwarded to New Relic.
|
|
78
|
+
#
|
|
79
|
+
# This is based on the integer values of Ruby's Logger::Severity constants.
|
|
80
|
+
#
|
|
81
|
+
# The intention is to forward logs with the level given to the configuration, as
|
|
82
|
+
# well as any logs with a higher level of severity.
|
|
83
|
+
#
|
|
84
|
+
# For example, setting this value to "debug" will forward all log events to New
|
|
85
|
+
# Relic. Setting this value to "error" will only forward log events with the
|
|
86
|
+
# levels "error", "fatal", and "unknown".
|
|
87
|
+
#
|
|
88
|
+
# Valid values (ordered lowest to highest):
|
|
89
|
+
# - "debug"
|
|
90
|
+
# - "info"
|
|
91
|
+
# - "warn"
|
|
92
|
+
# - "error"
|
|
93
|
+
# - "fatal"
|
|
94
|
+
# - "unknown"
|
|
95
|
+
# application_logging.forwarding.log_level: debug
|
|
96
|
+
|
|
43
97
|
# Defines the maximum number of log records to buffer in memory at a time.
|
|
44
98
|
# application_logging.forwarding.max_samples_stored: 10000
|
|
45
99
|
|
|
46
|
-
# If
|
|
47
|
-
#
|
|
48
|
-
|
|
49
|
-
# If `true`, the agent decorates logs with metadata to link to entities, hosts, traces, and spans.
|
|
100
|
+
# If true, the agent decorates logs with metadata to link to entities, hosts,
|
|
101
|
+
# traces, and spans.
|
|
50
102
|
# application_logging.local_decorating.enabled: false
|
|
51
103
|
|
|
52
|
-
# If
|
|
53
|
-
#
|
|
54
|
-
# code_level_metrics.enabled: true
|
|
55
|
-
|
|
56
|
-
# If true, enables transaction event sampling.
|
|
57
|
-
# transaction_events.enabled: true
|
|
104
|
+
# If true, the agent captures metrics related to logging for your application.
|
|
105
|
+
# application_logging.metrics.enabled: true
|
|
58
106
|
|
|
59
|
-
#
|
|
60
|
-
#
|
|
107
|
+
# If true, enables capture of attributes for all destinations.
|
|
108
|
+
# attributes.enabled: true
|
|
61
109
|
|
|
62
110
|
# Prefix of attributes to exclude from all destinations. Allows * as wildcard at
|
|
63
111
|
# end.
|
|
64
|
-
#
|
|
112
|
+
# attributes.exclude: []
|
|
65
113
|
|
|
66
114
|
# Prefix of attributes to include in all destinations. Allows * as wildcard at
|
|
67
115
|
# end.
|
|
68
|
-
#
|
|
69
|
-
|
|
70
|
-
# If true, enables capture of attributes for all destinations.
|
|
71
|
-
# attributes.enabled: true
|
|
116
|
+
# attributes.include: []
|
|
72
117
|
|
|
73
118
|
# If true, enables an audit log which logs communications with the New Relic
|
|
74
119
|
# collector.
|
|
@@ -78,24 +123,76 @@ common: &default_settings
|
|
|
78
123
|
# audit_log.endpoints: [".*"]
|
|
79
124
|
|
|
80
125
|
# Specifies a path to the audit log file (including the filename).
|
|
81
|
-
# audit_log.path:
|
|
126
|
+
# audit_log.path: log/newrelic_audit.log
|
|
127
|
+
|
|
128
|
+
# An array of CLASS#METHOD (for instance methods) and/or CLASS.METHOD (for class
|
|
129
|
+
# methods) strings representing Ruby methods that the agent can automatically
|
|
130
|
+
# add custom instrumentation to. This doesn't require any modifications of the
|
|
131
|
+
# source code that defines the methods.
|
|
132
|
+
#
|
|
133
|
+
# Use fully qualified class names (using the :: delimiter) that include any
|
|
134
|
+
# module or class namespacing.
|
|
135
|
+
#
|
|
136
|
+
# Here is some Ruby source code that defines a render_png instance method for an
|
|
137
|
+
# Image class and a notify class method for a User class, both within a
|
|
138
|
+
# MyCompany module namespace:
|
|
139
|
+
#
|
|
140
|
+
# module MyCompany
|
|
141
|
+
# class Image
|
|
142
|
+
# def render_png
|
|
143
|
+
# # code to render a PNG
|
|
144
|
+
# end
|
|
145
|
+
# end
|
|
146
|
+
#
|
|
147
|
+
# class User
|
|
148
|
+
# def self.notify
|
|
149
|
+
# # code to notify users
|
|
150
|
+
# end
|
|
151
|
+
# end
|
|
152
|
+
# end
|
|
153
|
+
#
|
|
154
|
+
#
|
|
155
|
+
# Given that source code, the newrelic.yml config file might request
|
|
156
|
+
# instrumentation for both of these methods like so:
|
|
157
|
+
#
|
|
158
|
+
# automatic_custom_instrumentation_method_list:
|
|
159
|
+
# - MyCompany::Image#render_png
|
|
160
|
+
# - MyCompany::User.notify
|
|
161
|
+
#
|
|
162
|
+
#
|
|
163
|
+
# That configuration example uses YAML array syntax to specify both methods.
|
|
164
|
+
# Alternatively, you can use a comma-delimited string:
|
|
165
|
+
#
|
|
166
|
+
# automatic_custom_instrumentation_method_list: 'MyCompany::Image#render_png,
|
|
167
|
+
# MyCompany::User.notify'
|
|
168
|
+
#
|
|
169
|
+
#
|
|
170
|
+
# Whitespace around the comma(s) in the list is optional. When configuring the
|
|
171
|
+
# agent with a list of methods via the
|
|
172
|
+
# NEW_RELIC_AUTOMATIC_CUSTOM_INSTRUMENTATION_METHOD_LIST environment variable,
|
|
173
|
+
# use this comma-delimited string format:
|
|
174
|
+
#
|
|
175
|
+
# export
|
|
176
|
+
# NEW_RELIC_AUTOMATIC_CUSTOM_INSTRUMENTATION_METHOD_LIST='MyCompany::Image#render_png,
|
|
177
|
+
# MyCompany::User.notify'
|
|
178
|
+
# automatic_custom_instrumentation_method_list: []
|
|
82
179
|
|
|
83
180
|
# Specify a list of constants that should prevent the agent from starting
|
|
84
|
-
# automatically. Separate individual constants with a comma ,.
|
|
85
|
-
#
|
|
86
|
-
# autostart.denylisted_constants:
|
|
181
|
+
# automatically. Separate individual constants with a comma ,. For example,
|
|
182
|
+
# "Rails::Console,UninstrumentedBackgroundJob".
|
|
183
|
+
# autostart.denylisted_constants: Rails::Command::ConsoleCommand,Rails::Command::CredentialsCommand,Rails::Command::Db::System::ChangeCommand,Rails::Command::DbConsoleCommand,Rails::Command::DestroyCommand,Rails::Command::DevCommand,Rails::Command::EncryptedCommand,Rails::Command::GenerateCommand,Rails::Command::InitializersCommand,Rails::Command::NotesCommand,Rails::Command::RoutesCommand,Rails::Command::RunnerCommand,Rails::Command::SecretsCommand,Rails::Console,Rails::DBConsole
|
|
87
184
|
|
|
88
185
|
# Defines a comma-delimited list of executables that the agent should not
|
|
89
|
-
# instrument. For example, rake,my_ruby_script.rb.
|
|
90
|
-
# autostart.denylisted_executables:
|
|
186
|
+
# instrument. For example, "rake,my_ruby_script.rb".
|
|
187
|
+
# autostart.denylisted_executables: irb,rspec
|
|
91
188
|
|
|
92
189
|
# Defines a comma-delimited list of Rake tasks that the agent should not
|
|
93
|
-
# instrument. For example, assets:precompile,db:migrate.
|
|
94
|
-
# autostart.denylisted_rake_tasks:
|
|
190
|
+
# instrument. For example, "assets:precompile,db:migrate".
|
|
191
|
+
# autostart.denylisted_rake_tasks: about,assets:clean,assets:clobber,assets:environment,assets:precompile,assets:precompile:all,db:create,db:drop,db:fixtures:load,db:migrate,db:migrate:status,db:rollback,db:schema:cache:clear,db:schema:cache:dump,db:schema:dump,db:schema:load,db:seed,db:setup,db:structure:dump,db:version,doc:app,log:clear,middleware,notes,notes:custom,rails:template,rails:update,routes,secret,spec,spec:features,spec:requests,spec:controllers,spec:helpers,spec:models,spec:views,spec:routing,spec:rcov,stats,test,test:all,test:all:db,test:recent,test:single,test:uncommitted,time:zones:all,tmp:clear,tmp:create,webpacker:compile
|
|
95
192
|
|
|
96
|
-
# Backports the faster
|
|
97
|
-
# which improves agent performance when instrumenting
|
|
98
|
-
# this setting may not be compatible with other gems that patch
|
|
193
|
+
# Backports the faster ActiveRecord connection lookup introduced in Rails 6,
|
|
194
|
+
# which improves agent performance when instrumenting ActiveRecord. Note that
|
|
195
|
+
# this setting may not be compatible with other gems that patch ActiveRecord.
|
|
99
196
|
# backport_fast_active_record_connection_lookup: false
|
|
100
197
|
|
|
101
198
|
# If true, the agent captures attributes from browser monitoring.
|
|
@@ -109,68 +206,83 @@ common: &default_settings
|
|
|
109
206
|
# end.
|
|
110
207
|
# browser_monitoring.attributes.include: []
|
|
111
208
|
|
|
112
|
-
#
|
|
113
|
-
#
|
|
209
|
+
# If true, enables auto-injection of the JavaScript header for page load timing
|
|
210
|
+
# (sometimes referred to as real user monitoring or RUM).
|
|
114
211
|
# browser_monitoring.auto_instrument: true
|
|
115
212
|
|
|
116
|
-
#
|
|
117
|
-
#
|
|
118
|
-
#
|
|
213
|
+
# If true, enables auto-injection of Content Security Policy Nonce in browser
|
|
214
|
+
# monitoring scripts. For now, auto-injection only works with Rails 5.2+.
|
|
215
|
+
# browser_monitoring.content_security_policy_nonce: true
|
|
216
|
+
|
|
217
|
+
# Manual override for the path to your local CA bundle. This CA bundle validates
|
|
218
|
+
# the SSL certificate presented by New Relic's data collection service.
|
|
119
219
|
# ca_bundle_path: nil
|
|
120
220
|
|
|
121
221
|
# Enable or disable the capture of memcache keys from transaction traces.
|
|
122
222
|
# capture_memcache_keys: false
|
|
123
223
|
|
|
124
224
|
# When true, the agent captures HTTP request parameters and attaches them to
|
|
125
|
-
# transaction traces, traced errors, and TransactionError events.
|
|
126
|
-
#
|
|
127
|
-
#
|
|
128
|
-
#
|
|
129
|
-
#
|
|
225
|
+
# transaction traces, traced errors, and TransactionError events.
|
|
226
|
+
#
|
|
227
|
+
# When using the capture_params setting, the Ruby agent will not attempt to
|
|
228
|
+
# filter secret information. Recommendation: To filter secret information from
|
|
229
|
+
# request parameters, use the attributes.include setting instead. For more
|
|
230
|
+
# information, see the Ruby attribute examples.
|
|
130
231
|
# capture_params: false
|
|
131
232
|
|
|
132
233
|
# If true, the agent will clear Tracer::State in Agent.drop_buffered_data.
|
|
133
234
|
# clear_transaction_state_after_fork: false
|
|
134
235
|
|
|
236
|
+
# The AWS account ID for the AWS account associated with this app
|
|
237
|
+
# cloud.aws.account_id: nil
|
|
238
|
+
|
|
239
|
+
# If true, the agent will report source code level metrics for traced methods.
|
|
240
|
+
# See:
|
|
241
|
+
# https://docs.newrelic.com/docs/apm/agents/ruby-agent/features/ruby-codestream-integration/
|
|
242
|
+
# code_level_metrics.enabled: true
|
|
243
|
+
|
|
135
244
|
# Path to newrelic.yml. If undefined, the agent checks the following directories
|
|
136
|
-
# (in order):
|
|
137
|
-
#
|
|
245
|
+
# (in order):
|
|
246
|
+
# - config/newrelic.yml
|
|
247
|
+
# - newrelic.yml
|
|
248
|
+
# - $HOME/.newrelic/newrelic.yml
|
|
249
|
+
# - $HOME/newrelic.yml
|
|
138
250
|
# config_path: newrelic.yml
|
|
139
251
|
|
|
140
|
-
# If
|
|
141
|
-
# deprecated, and disabled by default. Distributed tracing is replacing cross
|
|
142
|
-
# application tracing as the default means of tracing between services.
|
|
143
|
-
# To continue using it, set `cross_application_tracer.enabled: true` and
|
|
144
|
-
# `distributed_tracing.enabled: false`
|
|
145
|
-
# cross_application_tracer.enabled: false
|
|
146
|
-
|
|
147
|
-
# If false, custom attributes will not be sent on New Relic Insights events.
|
|
252
|
+
# If false, custom attributes will not be sent on events.
|
|
148
253
|
# custom_attributes.enabled: true
|
|
149
254
|
|
|
150
|
-
# If true, the agent captures
|
|
255
|
+
# If true, the agent captures custom events.
|
|
151
256
|
# custom_insights_events.enabled: true
|
|
152
257
|
|
|
153
|
-
# Specify a maximum number of custom
|
|
154
|
-
#
|
|
258
|
+
# - Specify a maximum number of custom events to buffer in memory at a time.
|
|
259
|
+
# - When configuring the agent for AI monitoring, set to max value 100000.
|
|
260
|
+
# This ensures the agent captures the maximum amount of LLM events.
|
|
155
261
|
# custom_insights_events.max_samples_stored: 3000
|
|
156
262
|
|
|
157
|
-
# If false, the agent will not add database_name parameter to transaction or
|
|
263
|
+
# If false, the agent will not add database_name parameter to transaction or
|
|
158
264
|
# slow sql traces.
|
|
159
265
|
# datastore_tracer.database_name_reporting.enabled: true
|
|
160
266
|
|
|
161
267
|
# If false, the agent will not report datastore instance metrics, nor add host
|
|
162
|
-
# or
|
|
268
|
+
# or port_path_or_id parameters to transaction or slow SQL traces.
|
|
163
269
|
# datastore_tracer.instance_reporting.enabled: true
|
|
164
270
|
|
|
165
271
|
# If true, disables Action Cable instrumentation.
|
|
166
272
|
# disable_action_cable_instrumentation: false
|
|
167
273
|
|
|
274
|
+
# If true, disables Action Controller instrumentation.
|
|
275
|
+
# disable_action_controller: false
|
|
276
|
+
|
|
168
277
|
# If true, disables Action Mailbox instrumentation.
|
|
169
278
|
# disable_action_mailbox: false
|
|
170
279
|
|
|
171
280
|
# If true, disables Action Mailer instrumentation.
|
|
172
281
|
# disable_action_mailer: false
|
|
173
282
|
|
|
283
|
+
# If true, disables Active Record instrumentation.
|
|
284
|
+
# disable_active_record_instrumentation: false
|
|
285
|
+
|
|
174
286
|
# If true, disables instrumentation for Active Record 4+
|
|
175
287
|
# disable_active_record_notifications: false
|
|
176
288
|
|
|
@@ -183,15 +295,9 @@ common: &default_settings
|
|
|
183
295
|
# If true, disables Active Job instrumentation.
|
|
184
296
|
# disable_activejob: false
|
|
185
297
|
|
|
186
|
-
# If true, disables Active Record instrumentation.
|
|
187
|
-
# disable_active_record_instrumentation: false
|
|
188
|
-
|
|
189
298
|
# If true, the agent won't sample the CPU usage of the host process.
|
|
190
299
|
# disable_cpu_sampler: false
|
|
191
300
|
|
|
192
|
-
# If true, disables ActiveSupport custom events instrumentation.
|
|
193
|
-
# disable_custom_events_instrumentation: false
|
|
194
|
-
|
|
195
301
|
# If true, the agent won't measure the depth of Delayed Job queues.
|
|
196
302
|
# disable_delayed_job_sampler: false
|
|
197
303
|
|
|
@@ -204,8 +310,16 @@ common: &default_settings
|
|
|
204
310
|
|
|
205
311
|
# If true, the agent won't wrap third-party middlewares in instrumentation
|
|
206
312
|
# (regardless of whether they are installed via Rack::Builder or Rails).
|
|
313
|
+
#
|
|
314
|
+
# When middleware instrumentation is disabled, if an application is using
|
|
315
|
+
# middleware that could alter the response code, the HTTP status code reported
|
|
316
|
+
# on the transaction may not reflect the altered value.
|
|
207
317
|
# disable_middleware_instrumentation: false
|
|
208
318
|
|
|
319
|
+
# If true, disables agent middleware for Roda. This middleware is responsible
|
|
320
|
+
# for advanced feature support such as page load timing and error collection.
|
|
321
|
+
# disable_roda_auto_middleware: false
|
|
322
|
+
|
|
209
323
|
# If true, disables the collection of sampler metrics. Sampler metrics are
|
|
210
324
|
# metrics that are not event-based (such as CPU time or memory usage).
|
|
211
325
|
# disable_samplers: false
|
|
@@ -217,8 +331,20 @@ common: &default_settings
|
|
|
217
331
|
# disable_sidekiq: false
|
|
218
332
|
|
|
219
333
|
# If true, disables agent middleware for Sinatra. This middleware is responsible
|
|
220
|
-
# for advanced feature support such as
|
|
334
|
+
# for advanced feature support such as cross application tracing, page load
|
|
221
335
|
# timing, and error collection.
|
|
336
|
+
#
|
|
337
|
+
# Cross application tracing is deprecated in favor of distributed tracing.
|
|
338
|
+
# Distributed tracing is on by default for Ruby agent versions 8.0.0 and above.
|
|
339
|
+
# Middlewares are not required to support distributed tracing.
|
|
340
|
+
#
|
|
341
|
+
# To continue using cross application tracing, update the following options in
|
|
342
|
+
# your newrelic.yml configuration file:
|
|
343
|
+
#
|
|
344
|
+
# cross_application_tracer:
|
|
345
|
+
# enabled: true
|
|
346
|
+
# distributed_tracing:
|
|
347
|
+
# enabled: false
|
|
222
348
|
# disable_sinatra_auto_middleware: false
|
|
223
349
|
|
|
224
350
|
# If true, disables view instrumentation.
|
|
@@ -227,19 +353,41 @@ common: &default_settings
|
|
|
227
353
|
# If true, the agent won't sample performance measurements from the Ruby VM.
|
|
228
354
|
# disable_vm_sampler: false
|
|
229
355
|
|
|
230
|
-
# Distributed tracing
|
|
231
|
-
#
|
|
356
|
+
# Distributed tracing lets you see the path that a request takes through your
|
|
357
|
+
# distributed system. Enabling distributed tracing changes the behavior of some
|
|
358
|
+
# New Relic features, so carefully consult the transition guide before you
|
|
359
|
+
# enable this feature.
|
|
232
360
|
# distributed_tracing.enabled: true
|
|
233
361
|
|
|
362
|
+
# This setting controls the behavior of transaction sampling when a remote
|
|
363
|
+
# parent is not sampled and the trace flag is not set in the traceparent.
|
|
364
|
+
# Available values are default, always_on, and always_off.
|
|
365
|
+
# distributed_tracing.sampler.remote_parent_not_sampled: default
|
|
366
|
+
|
|
367
|
+
# This setting controls the behavior of transaction sampling when a remote
|
|
368
|
+
# parent is sampled and the trace flag is set in the traceparent. Available
|
|
369
|
+
# values are default, always_on, and always_off.
|
|
370
|
+
# distributed_tracing.sampler.remote_parent_sampled: default
|
|
371
|
+
|
|
372
|
+
# If true, the agent captures the Elasticsearch cluster name in transaction
|
|
373
|
+
# traces.
|
|
374
|
+
# elasticsearch.capture_cluster_name: true
|
|
375
|
+
|
|
376
|
+
# If true, the agent captures Elasticsearch queries in transaction traces.
|
|
377
|
+
# elasticsearch.capture_queries: true
|
|
378
|
+
|
|
379
|
+
# If true, the agent obfuscates Elasticsearch queries in transaction traces.
|
|
380
|
+
# elasticsearch.obfuscate_queries: true
|
|
381
|
+
|
|
234
382
|
# If true, the agent captures attributes from error collection.
|
|
235
|
-
# error_collector.attributes.enabled:
|
|
383
|
+
# error_collector.attributes.enabled: true
|
|
236
384
|
|
|
237
|
-
# Prefix of attributes to exclude from error collection.
|
|
238
|
-
#
|
|
385
|
+
# Prefix of attributes to exclude from error collection. Allows * as wildcard at
|
|
386
|
+
# end.
|
|
239
387
|
# error_collector.attributes.exclude: []
|
|
240
388
|
|
|
241
|
-
# Prefix of attributes to include in error collection.
|
|
242
|
-
#
|
|
389
|
+
# Prefix of attributes to include in error collection. Allows * as wildcard at
|
|
390
|
+
# end.
|
|
243
391
|
# error_collector.attributes.include: []
|
|
244
392
|
|
|
245
393
|
# If true, the agent collects TransactionError events.
|
|
@@ -249,11 +397,13 @@ common: &default_settings
|
|
|
249
397
|
# error_collector.enabled: true
|
|
250
398
|
|
|
251
399
|
# A list of error classes that the agent should treat as expected.
|
|
400
|
+
# This option can't be set via environment variable.
|
|
252
401
|
# error_collector.expected_classes: []
|
|
253
402
|
|
|
254
403
|
# A map of error classes to a list of messages. When an error of one of the
|
|
255
404
|
# classes specified here occurs, if its error message contains one of the
|
|
256
405
|
# strings corresponding to it here, that error will be treated as expected.
|
|
406
|
+
# This option can't be set via environment variable.
|
|
257
407
|
# error_collector.expected_messages: {}
|
|
258
408
|
|
|
259
409
|
# A comma separated list of status codes, possibly including ranges. Errors
|
|
@@ -262,38 +412,41 @@ common: &default_settings
|
|
|
262
412
|
# error_collector.expected_status_codes: ""
|
|
263
413
|
|
|
264
414
|
# A list of error classes that the agent should ignore.
|
|
265
|
-
#
|
|
415
|
+
# This option can't be set via environment variable.
|
|
416
|
+
# error_collector.ignore_classes: ["ActionController::RoutingError", "Sinatra::NotFound"]
|
|
266
417
|
|
|
267
418
|
# A map of error classes to a list of messages. When an error of one of the
|
|
268
419
|
# classes specified here occurs, if its error message contains one of the
|
|
269
420
|
# strings corresponding to it here, that error will be ignored.
|
|
270
|
-
#
|
|
421
|
+
# This option can't be set via environment variable.
|
|
422
|
+
# error_collector.ignore_messages: {ThreadError: ["queue empty"]}
|
|
271
423
|
|
|
272
424
|
# A comma separated list of status codes, possibly including ranges. Errors
|
|
273
425
|
# associated with these status codes, where applicable, will be ignored.
|
|
274
426
|
# error_collector.ignore_status_codes: ""
|
|
275
427
|
|
|
276
428
|
# Defines the maximum number of frames in an error backtrace. Backtraces over
|
|
277
|
-
# this amount are truncated
|
|
429
|
+
# this amount are truncated in the middle, preserving the beginning and the end
|
|
430
|
+
# of the stack trace.
|
|
278
431
|
# error_collector.max_backtrace_frames: 50
|
|
279
432
|
|
|
280
|
-
# Defines the maximum number of TransactionError events
|
|
281
|
-
#
|
|
433
|
+
# Defines the maximum number of TransactionError events reported per harvest
|
|
434
|
+
# cycle.
|
|
282
435
|
# error_collector.max_event_samples_stored: 100
|
|
283
436
|
|
|
284
437
|
# Allows newrelic distributed tracing headers to be suppressed on outbound
|
|
285
438
|
# requests.
|
|
286
439
|
# exclude_newrelic_header: false
|
|
287
440
|
|
|
288
|
-
#
|
|
289
|
-
#
|
|
290
|
-
# generally should not be.
|
|
291
|
-
#
|
|
292
|
-
#
|
|
293
|
-
#
|
|
294
|
-
#
|
|
295
|
-
#
|
|
296
|
-
#
|
|
441
|
+
# The exit handler that sends all cached data to the collector before shutting
|
|
442
|
+
# down is forcibly installed. This is true even when it detects scenarios where
|
|
443
|
+
# it generally should not be. The known use case for this option is when Sinatra
|
|
444
|
+
# runs as an embedded service within another framework. The agent detects the
|
|
445
|
+
# Sinatra app and skips the at_exit handler as a result. Sinatra classically
|
|
446
|
+
# runs the entire application in an at_exit block and would otherwise misbehave
|
|
447
|
+
# if the agent's at_exit handler was also installed in those circumstances.
|
|
448
|
+
# Note: send_data_on_exit should also be set to true in tandem with this
|
|
449
|
+
# setting.
|
|
297
450
|
# force_install_exit_handler: false
|
|
298
451
|
|
|
299
452
|
# Ordinarily the agent reports dyno names with a trailing dot and process ID
|
|
@@ -304,174 +457,244 @@ common: &default_settings
|
|
|
304
457
|
# If true, the agent uses Heroku dyno names as the hostname.
|
|
305
458
|
# heroku.use_dyno_names: true
|
|
306
459
|
|
|
307
|
-
# If true, enables high security mode. Ensure
|
|
308
|
-
#
|
|
309
|
-
# https://docs.newrelic.com/docs/agents/manage-apm-agents/configuration/high-security-mode/
|
|
460
|
+
# If true, enables high security mode. Ensure you understand the implications of
|
|
461
|
+
# high security mode before enabling this setting.
|
|
310
462
|
# high_security: false
|
|
311
463
|
|
|
312
|
-
#
|
|
313
|
-
#
|
|
464
|
+
# If true (the default), data sent to the trace observer is batched instead of
|
|
465
|
+
# sending each span individually.
|
|
466
|
+
# infinite_tracing.batching: true
|
|
467
|
+
|
|
468
|
+
# Configure the compression level for data sent to the trace observer. May be
|
|
469
|
+
# one of: :none, :low, :medium, :high. Set the level to :none to disable
|
|
470
|
+
# compression.
|
|
471
|
+
# infinite_tracing.compression_level: high
|
|
472
|
+
|
|
473
|
+
# Configures the hostname for the trace observer Host. When configured, enables
|
|
474
|
+
# tail-based sampling by sending all recorded spans to a trace observer for
|
|
314
475
|
# further sampling decisions, irrespective of any usual agent sampling decision.
|
|
315
476
|
# infinite_tracing.trace_observer.host: ""
|
|
316
477
|
|
|
317
|
-
# Configures the TCP/IP port for the
|
|
478
|
+
# Configures the TCP/IP port for the trace observer Host
|
|
318
479
|
# infinite_tracing.trace_observer.port: 443
|
|
319
480
|
|
|
320
|
-
#
|
|
321
|
-
# May be one of
|
|
322
|
-
#
|
|
323
|
-
# infinite_tracing.compression_level: high
|
|
481
|
+
# Controls auto-instrumentation of ActiveSupport::BroadcastLogger at start up.
|
|
482
|
+
# May be one of: auto, prepend, chain, disabled. Used in Rails versions >= 7.1.
|
|
483
|
+
# instrumentation.active_support_broadcast_logger: auto
|
|
324
484
|
|
|
325
|
-
#
|
|
326
|
-
#
|
|
327
|
-
#
|
|
485
|
+
# Controls auto-instrumentation of ActiveSupport::Logger at start up. May be one
|
|
486
|
+
# of: auto, prepend, chain, disabled. Used in Rails versions below 7.1.
|
|
487
|
+
# instrumentation.active_support_logger: auto
|
|
328
488
|
|
|
329
|
-
# Controls auto-instrumentation of
|
|
330
|
-
#
|
|
331
|
-
# instrumentation.
|
|
489
|
+
# Controls auto-instrumentation of Async::HTTP at start up. May be one of: auto,
|
|
490
|
+
# prepend, chain, disabled.
|
|
491
|
+
# instrumentation.async_http: auto
|
|
332
492
|
|
|
333
|
-
# Controls auto-instrumentation of
|
|
334
|
-
#
|
|
335
|
-
# instrumentation.
|
|
493
|
+
# Controls auto-instrumentation of the aws-sdk-firehose library at start-up. May
|
|
494
|
+
# be one of auto, prepend, chain, disabled.
|
|
495
|
+
# instrumentation.aws_sdk_firehose: auto
|
|
496
|
+
|
|
497
|
+
# Controls auto-instrumentation of the aws-sdk-kinesis library at start-up. May
|
|
498
|
+
# be one of auto, prepend, chain, disabled.
|
|
499
|
+
# instrumentation.aws_sdk_kinesis: auto
|
|
500
|
+
|
|
501
|
+
# Controls auto-instrumentation of the aws_sdk_lambda library at start-up. May
|
|
502
|
+
# be one of auto, prepend, chain, disabled.
|
|
503
|
+
# instrumentation.aws_sdk_lambda: auto
|
|
336
504
|
|
|
337
|
-
# Controls auto-instrumentation of
|
|
338
|
-
#
|
|
505
|
+
# Controls auto-instrumentation of the aws-sdk-sqs library at start-up. May be
|
|
506
|
+
# one of: auto, prepend, chain, disabled.
|
|
507
|
+
# instrumentation.aws_sqs: auto
|
|
508
|
+
|
|
509
|
+
# Controls auto-instrumentation of bunny at start-up. May be one of: auto,
|
|
510
|
+
# prepend, chain, disabled.
|
|
511
|
+
# instrumentation.bunny: auto
|
|
512
|
+
|
|
513
|
+
# Controls auto-instrumentation of the concurrent-ruby library at start-up. May
|
|
514
|
+
# be one of: auto, prepend, chain, disabled.
|
|
339
515
|
# instrumentation.concurrent_ruby: auto
|
|
340
516
|
|
|
341
|
-
# Controls auto-instrumentation of Curb at start
|
|
342
|
-
#
|
|
517
|
+
# Controls auto-instrumentation of Curb at start-up. May be one of: auto,
|
|
518
|
+
# prepend, chain, disabled.
|
|
343
519
|
# instrumentation.curb: auto
|
|
344
520
|
|
|
345
|
-
# Controls auto-instrumentation of Delayed Job at start
|
|
346
|
-
#
|
|
521
|
+
# Controls auto-instrumentation of Delayed Job at start-up. May be one of: auto,
|
|
522
|
+
# prepend, chain, disabled.
|
|
347
523
|
# instrumentation.delayed_job: auto
|
|
348
524
|
|
|
349
|
-
# Controls auto-instrumentation of the
|
|
350
|
-
#
|
|
525
|
+
# Controls auto-instrumentation of the aws-sdk-dynamodb library at start-up. May
|
|
526
|
+
# be one of auto, prepend, chain, disabled.
|
|
527
|
+
# instrumentation.dynamodb: auto
|
|
528
|
+
|
|
529
|
+
# Controls auto-instrumentation of the elasticsearch library at start-up. May be
|
|
530
|
+
# one of: auto, prepend, chain, disabled.
|
|
351
531
|
# instrumentation.elasticsearch: auto
|
|
352
532
|
|
|
353
|
-
# Controls auto-instrumentation of
|
|
354
|
-
#
|
|
355
|
-
# instrumentation.
|
|
533
|
+
# Controls auto-instrumentation of ethon at start up. May be one of auto,
|
|
534
|
+
# prepend, chain, disabled
|
|
535
|
+
# instrumentation.ethon: auto
|
|
536
|
+
|
|
537
|
+
# Controls auto-instrumentation of Excon at start-up. May be one of: enabled,
|
|
538
|
+
# disabled.
|
|
539
|
+
# instrumentation.excon: enabled
|
|
540
|
+
|
|
541
|
+
# Controls auto-instrumentation of the Fiber class at start-up. May be one of:
|
|
542
|
+
# auto, prepend, chain, disabled.
|
|
543
|
+
# instrumentation.fiber: auto
|
|
356
544
|
|
|
357
|
-
# Controls auto-instrumentation of Grape at start
|
|
358
|
-
#
|
|
545
|
+
# Controls auto-instrumentation of Grape at start-up. May be one of: auto,
|
|
546
|
+
# prepend, chain, disabled.
|
|
359
547
|
# instrumentation.grape: auto
|
|
360
548
|
|
|
361
|
-
#
|
|
362
|
-
#
|
|
549
|
+
# Specifies a list of hostname patterns separated by commas that will match gRPC
|
|
550
|
+
# hostnames that traffic is to be ignored by New Relic for. New Relic's gRPC
|
|
551
|
+
# client instrumentation will ignore traffic streamed to a host matching any of
|
|
552
|
+
# these patterns, and New Relic's gRPC server instrumentation will ignore
|
|
553
|
+
# traffic for a server running on a host whose hostname matches any of these
|
|
554
|
+
# patterns. By default, no traffic is ignored when gRPC instrumentation is
|
|
555
|
+
# itself enabled. For example, "private.com$,exception.*"
|
|
556
|
+
# instrumentation.grpc.host_denylist: []
|
|
557
|
+
|
|
558
|
+
# Controls auto-instrumentation of gRPC clients at start-up. May be one of:
|
|
559
|
+
# auto, prepend, chain, disabled.
|
|
560
|
+
# instrumentation.grpc_client: auto
|
|
561
|
+
|
|
562
|
+
# Controls auto-instrumentation of gRPC servers at start-up. May be one of:
|
|
563
|
+
# auto, prepend, chain, disabled.
|
|
564
|
+
# instrumentation.grpc_server: auto
|
|
565
|
+
|
|
566
|
+
# Controls auto-instrumentation of HTTPClient at start-up. May be one of: auto,
|
|
567
|
+
# prepend, chain, disabled.
|
|
363
568
|
# instrumentation.httpclient: auto
|
|
364
569
|
|
|
365
|
-
# Controls auto-instrumentation of http.rb gem at start
|
|
366
|
-
#
|
|
570
|
+
# Controls auto-instrumentation of http.rb gem at start-up. May be one of: auto,
|
|
571
|
+
# prepend, chain, disabled.
|
|
367
572
|
# instrumentation.httprb: auto
|
|
368
573
|
|
|
369
|
-
# Controls auto-instrumentation of
|
|
370
|
-
#
|
|
371
|
-
# instrumentation.
|
|
574
|
+
# Controls auto-instrumentation of httpx at start up. May be one of auto,
|
|
575
|
+
# prepend, chain, disabled
|
|
576
|
+
# instrumentation.httpx: auto
|
|
372
577
|
|
|
373
|
-
# Controls auto-instrumentation of
|
|
374
|
-
#
|
|
375
|
-
# instrumentation.
|
|
578
|
+
# Controls auto-instrumentation of Ruby standard library Logger at start-up. May
|
|
579
|
+
# be one of: auto, prepend, chain, disabled.
|
|
580
|
+
# instrumentation.logger: auto
|
|
376
581
|
|
|
377
|
-
# Controls auto-instrumentation of
|
|
378
|
-
#
|
|
379
|
-
# instrumentation.
|
|
582
|
+
# Controls auto-instrumentation of the LogStasher library at start-up. May be
|
|
583
|
+
# one of: auto, prepend, chain, disabled.
|
|
584
|
+
# instrumentation.logstasher: auto
|
|
380
585
|
|
|
381
|
-
# Controls auto-instrumentation of dalli gem for Memcache at start
|
|
382
|
-
#
|
|
586
|
+
# Controls auto-instrumentation of dalli gem for Memcache at start-up. May be
|
|
587
|
+
# one of: auto, prepend, chain, disabled.
|
|
383
588
|
# instrumentation.memcache: auto
|
|
384
589
|
|
|
385
|
-
# Controls auto-instrumentation of
|
|
386
|
-
# May be one of
|
|
590
|
+
# Controls auto-instrumentation of memcache-client gem for Memcache at start-up.
|
|
591
|
+
# May be one of: auto, prepend, chain, disabled.
|
|
592
|
+
# instrumentation.memcache_client: auto
|
|
593
|
+
|
|
594
|
+
# Controls auto-instrumentation of memcached gem for Memcache at start-up. May
|
|
595
|
+
# be one of: auto, prepend, chain, disabled.
|
|
387
596
|
# instrumentation.memcached: auto
|
|
388
597
|
|
|
389
|
-
# Controls auto-instrumentation of Mongo at start
|
|
390
|
-
#
|
|
391
|
-
# instrumentation.mongo:
|
|
598
|
+
# Controls auto-instrumentation of Mongo at start-up. May be one of: enabled,
|
|
599
|
+
# disabled.
|
|
600
|
+
# instrumentation.mongo: enabled
|
|
392
601
|
|
|
393
|
-
# Controls auto-instrumentation of Net::HTTP at start
|
|
394
|
-
#
|
|
602
|
+
# Controls auto-instrumentation of Net::HTTP at start-up. May be one of: auto,
|
|
603
|
+
# prepend, chain, disabled.
|
|
395
604
|
# instrumentation.net_http: auto
|
|
396
605
|
|
|
397
|
-
# Controls auto-instrumentation of
|
|
398
|
-
#
|
|
399
|
-
# instrumentation.
|
|
606
|
+
# Controls auto-instrumentation of the opensearch-ruby library at start-up. May
|
|
607
|
+
# be one of auto, prepend, chain, disabled.
|
|
608
|
+
# instrumentation.opensearch: auto
|
|
400
609
|
|
|
401
610
|
# Controls auto-instrumentation of Puma::Rack. When enabled, the agent hooks
|
|
402
611
|
# into the to_app method in Puma::Rack::Builder to find gems to instrument
|
|
403
|
-
# during application startup. May be one of
|
|
612
|
+
# during application startup. May be one of: auto, prepend, chain, disabled.
|
|
404
613
|
# instrumentation.puma_rack: auto
|
|
405
614
|
|
|
406
|
-
# Controls auto-instrumentation of Rack::URLMap at start
|
|
407
|
-
#
|
|
408
|
-
# instrumentation.
|
|
615
|
+
# Controls auto-instrumentation of Puma::Rack::URLMap at start-up. May be one
|
|
616
|
+
# of: auto, prepend, chain, disabled.
|
|
617
|
+
# instrumentation.puma_rack_urlmap: auto
|
|
409
618
|
|
|
410
619
|
# Controls auto-instrumentation of Rack. When enabled, the agent hooks into the
|
|
411
620
|
# to_app method in Rack::Builder to find gems to instrument during application
|
|
412
|
-
# startup. May be one of
|
|
621
|
+
# startup. May be one of: auto, prepend, chain, disabled.
|
|
413
622
|
# instrumentation.rack: auto
|
|
414
623
|
|
|
415
|
-
# Controls auto-instrumentation of
|
|
416
|
-
#
|
|
624
|
+
# Controls auto-instrumentation of Rack::URLMap at start-up. May be one of:
|
|
625
|
+
# auto, prepend, chain, disabled.
|
|
626
|
+
# instrumentation.rack_urlmap: auto
|
|
627
|
+
|
|
628
|
+
# Controls auto-instrumentation of rake at start-up. May be one of: auto,
|
|
629
|
+
# prepend, chain, disabled.
|
|
417
630
|
# instrumentation.rake: auto
|
|
418
631
|
|
|
419
|
-
# Controls auto-instrumentation of
|
|
420
|
-
#
|
|
632
|
+
# Controls auto-instrumentation of the rdkafka library at start-up. May be one
|
|
633
|
+
# of auto, prepend, chain, disabled.
|
|
634
|
+
# instrumentation.rdkafka: auto
|
|
635
|
+
|
|
636
|
+
# Controls auto-instrumentation of Redis at start-up. May be one of: auto,
|
|
637
|
+
# prepend, chain, disabled.
|
|
421
638
|
# instrumentation.redis: auto
|
|
422
639
|
|
|
423
|
-
# Controls auto-instrumentation of resque at start
|
|
424
|
-
#
|
|
640
|
+
# Controls auto-instrumentation of resque at start-up. May be one of: auto,
|
|
641
|
+
# prepend, chain, disabled.
|
|
425
642
|
# instrumentation.resque: auto
|
|
426
643
|
|
|
427
|
-
# Controls auto-instrumentation of
|
|
428
|
-
#
|
|
429
|
-
# instrumentation.
|
|
644
|
+
# Controls auto-instrumentation of Roda at start-up. May be one of: auto,
|
|
645
|
+
# prepend, chain, disabled.
|
|
646
|
+
# instrumentation.roda: auto
|
|
430
647
|
|
|
431
|
-
# Controls auto-instrumentation of
|
|
432
|
-
#
|
|
433
|
-
# instrumentation.
|
|
648
|
+
# Controls auto-instrumentation of the ruby-kafka library at start-up. May be
|
|
649
|
+
# one of auto, prepend, chain, disabled.
|
|
650
|
+
# instrumentation.ruby_kafka: auto
|
|
434
651
|
|
|
435
|
-
# Controls auto-instrumentation of
|
|
436
|
-
#
|
|
437
|
-
#
|
|
652
|
+
# Controls auto-instrumentation of the ruby-openai gem at start-up. May be one
|
|
653
|
+
# of: auto, prepend, chain, disabled. Defaults to disabled in high security
|
|
654
|
+
# mode.
|
|
655
|
+
# instrumentation.ruby_openai: auto
|
|
438
656
|
|
|
439
|
-
# Controls auto-instrumentation of
|
|
440
|
-
#
|
|
657
|
+
# Controls auto-instrumentation of Sinatra at start-up. May be one of: auto,
|
|
658
|
+
# prepend, chain, disabled.
|
|
659
|
+
# instrumentation.sinatra: auto
|
|
660
|
+
|
|
661
|
+
# Controls auto-instrumentation of Stripe at startup. May be one of: enabled,
|
|
662
|
+
# disabled.
|
|
663
|
+
# instrumentation.stripe: enabled
|
|
664
|
+
|
|
665
|
+
# Controls auto-instrumentation of the Thread class at start-up to allow the
|
|
666
|
+
# agent to correctly nest spans inside of an asynchronous transaction. This does
|
|
667
|
+
# not enable the agent to automatically trace all threads created (see
|
|
668
|
+
# instrumentation.thread.tracing). May be one of: auto, prepend, chain,
|
|
669
|
+
# disabled.
|
|
441
670
|
# instrumentation.thread: auto
|
|
442
671
|
|
|
443
|
-
# Controls auto-instrumentation of the Thread class at start
|
|
672
|
+
# Controls auto-instrumentation of the Thread class at start-up to automatically
|
|
673
|
+
# add tracing to all Threads created in the application.
|
|
444
674
|
# instrumentation.thread.tracing: true
|
|
445
675
|
|
|
446
|
-
# Controls auto-instrumentation of
|
|
447
|
-
# May be one of
|
|
448
|
-
# instrumentation.
|
|
676
|
+
# Controls auto-instrumentation of the Tilt template rendering library at
|
|
677
|
+
# start-up. May be one of: auto, prepend, chain, disabled.
|
|
678
|
+
# instrumentation.tilt: auto
|
|
449
679
|
|
|
450
|
-
# Controls auto-instrumentation of
|
|
451
|
-
#
|
|
452
|
-
# instrumentation.
|
|
680
|
+
# Controls auto-instrumentation of Typhoeus at start-up. May be one of: auto,
|
|
681
|
+
# prepend, chain, disabled.
|
|
682
|
+
# instrumentation.typhoeus: auto
|
|
453
683
|
|
|
454
|
-
#
|
|
455
|
-
#
|
|
456
|
-
#
|
|
457
|
-
# host matching any of these patterns, and New Relic's gRPC server
|
|
458
|
-
# instrumentation will ignore traffic for a server running on a host whose
|
|
459
|
-
# hostname matches any of these patterns. By default, no traffic is ignored
|
|
460
|
-
# when gRPC instrumentation is itself enabled.
|
|
461
|
-
# For example, "private.com$,exception.*"
|
|
462
|
-
# instrumentation.grpc.host_denylist: ""
|
|
684
|
+
# Controls auto-instrumentation of ViewComponent at startup. May be one of:
|
|
685
|
+
# auto, prepend, chain, disabled.
|
|
686
|
+
# instrumentation.view_component: auto
|
|
463
687
|
|
|
464
688
|
# A dictionary of label names and values that will be applied to the data sent
|
|
465
689
|
# from this agent. May also be expressed as a semicolon-delimited ; string of
|
|
466
|
-
# colon-separated : pairs.
|
|
467
|
-
# For example,<var>Server</var>:<var>One</var>;<var>Data Center</var>:<var>Primary</var>.
|
|
690
|
+
# colon-separated : pairs. For example, Server:One;Data Center:Primary.
|
|
468
691
|
# labels: ""
|
|
469
692
|
|
|
470
693
|
# Defines a name for the log file.
|
|
471
|
-
# log_file_name:
|
|
694
|
+
# log_file_name: newrelic_agent.log
|
|
472
695
|
|
|
473
696
|
# Defines a path to the agent log file, excluding the filename.
|
|
474
|
-
# log_file_path:
|
|
697
|
+
# log_file_path: log/
|
|
475
698
|
|
|
476
699
|
# Specifies a marshaller for transmitting data to the New Relic collector.
|
|
477
700
|
# Currently json is the only valid value for this setting.
|
|
@@ -487,22 +710,21 @@ common: &default_settings
|
|
|
487
710
|
# If true, the agent obfuscates Mongo queries in transaction traces.
|
|
488
711
|
# mongo.obfuscate_queries: true
|
|
489
712
|
|
|
490
|
-
# If true, the agent captures Elasticsearch queries in transaction traces.
|
|
491
|
-
# elasticsearch.capture_queries: true
|
|
492
|
-
|
|
493
|
-
# If true, the agent obfuscates Elasticsearch queries in transaction traces.
|
|
494
|
-
# elasticsearch.obfuscate_queries: true
|
|
495
|
-
|
|
496
713
|
# When true, the agent transmits data about your app to the New Relic collector.
|
|
497
714
|
# monitor_mode: true
|
|
498
715
|
|
|
499
|
-
# If true,
|
|
716
|
+
# If true, the agent captures OpenSearch queries in transaction traces.
|
|
717
|
+
# opensearch.capture_queries: true
|
|
718
|
+
|
|
719
|
+
# If true, the agent obfuscates OpenSearch queries in transaction traces.
|
|
720
|
+
# opensearch.obfuscate_queries: true
|
|
721
|
+
|
|
722
|
+
# If true, uses Module#prepend rather than alias_method for ActiveRecord
|
|
500
723
|
# instrumentation.
|
|
501
724
|
# prepend_active_record_instrumentation: false
|
|
502
725
|
|
|
503
|
-
# Specify a custom host name for display in the New Relic UI
|
|
504
|
-
#
|
|
505
|
-
# process_host.display_name: "default hostname"
|
|
726
|
+
# Specify a custom host name for display in the New Relic UI.
|
|
727
|
+
# process_host.display_name: default hostname
|
|
506
728
|
|
|
507
729
|
# Defines a host for communicating with the New Relic collector via a proxy
|
|
508
730
|
# server.
|
|
@@ -514,7 +736,7 @@ common: &default_settings
|
|
|
514
736
|
|
|
515
737
|
# Defines a port for communicating with the New Relic collector via a proxy
|
|
516
738
|
# server.
|
|
517
|
-
# proxy_port:
|
|
739
|
+
# proxy_port: 8080
|
|
518
740
|
|
|
519
741
|
# Defines a user for communicating with the New Relic collector via a proxy
|
|
520
742
|
# server.
|
|
@@ -523,15 +745,16 @@ common: &default_settings
|
|
|
523
745
|
# Timeout for waiting on connect to complete before a rake task
|
|
524
746
|
# rake.connect_timeout: 10
|
|
525
747
|
|
|
526
|
-
# Specify an
|
|
527
|
-
#
|
|
528
|
-
#
|
|
529
|
-
#
|
|
530
|
-
#
|
|
748
|
+
# Specify an Array of Rake tasks to automatically instrument. This configuration
|
|
749
|
+
# option converts the Array to a RegEx list. If you'd like to allow all tasks by
|
|
750
|
+
# default, use rake.tasks: [.+]. No rake tasks will be instrumented unless
|
|
751
|
+
# they're added to this list. For more information, visit the New Relic Rake
|
|
752
|
+
# Instrumentation docs.
|
|
531
753
|
# rake.tasks: []
|
|
532
754
|
|
|
533
755
|
# Define transactions you want the agent to ignore, by specifying a list of
|
|
534
|
-
# patterns matching the URI you want to ignore.
|
|
756
|
+
# patterns matching the URI you want to ignore. For more detail, see the docs on
|
|
757
|
+
# ignoring specific transactions.
|
|
535
758
|
# rules.ignore_url_regexes: []
|
|
536
759
|
|
|
537
760
|
# Applies Language Agent Security Policy settings.
|
|
@@ -541,33 +764,54 @@ common: &default_settings
|
|
|
541
764
|
# before shutting down.
|
|
542
765
|
# send_data_on_exit: true
|
|
543
766
|
|
|
767
|
+
# If true, the agent will operate in a streamlined mode suitable for use with
|
|
768
|
+
# short-lived serverless functions. NOTE: Only AWS Lambda functions are
|
|
769
|
+
# supported currently and this option isn't intended for use without New Relic's
|
|
770
|
+
# Ruby Lambda layer offering.
|
|
771
|
+
# serverless_mode.enabled: false
|
|
772
|
+
|
|
773
|
+
# An array of strings that will collectively serve as a denylist for filtering
|
|
774
|
+
# which Sidekiq job arguments get reported to New Relic. To capture any Sidekiq
|
|
775
|
+
# arguments, 'job.sidekiq.args.*' must be added to the separate
|
|
776
|
+
# :'attributes.include' configuration option. Each string in this array will be
|
|
777
|
+
# turned into a regular expression via Regexp.new to permit advanced matching.
|
|
778
|
+
# For job argument hashes, if either a key or value matches the pair will be
|
|
779
|
+
# excluded. All matching job argument array elements and job argument scalars
|
|
780
|
+
# will be excluded.
|
|
781
|
+
# sidekiq.args.exclude: []
|
|
782
|
+
|
|
783
|
+
# An array of strings that will collectively serve as an allowlist for filtering
|
|
784
|
+
# which Sidekiq job arguments get reported to New Relic. To capture any Sidekiq
|
|
785
|
+
# arguments, 'job.sidekiq.args.*' must be added to the separate
|
|
786
|
+
# :'attributes.include' configuration option. Each string in this array will be
|
|
787
|
+
# turned into a regular expression via Regexp.new to permit advanced matching.
|
|
788
|
+
# For job argument hashes, if either a key or value matches the pair will be
|
|
789
|
+
# included. All matching job argument array elements and job argument scalars
|
|
790
|
+
# will be included.
|
|
791
|
+
# sidekiq.args.include: []
|
|
792
|
+
|
|
544
793
|
# If true, the agent collects slow SQL queries.
|
|
545
|
-
# slow_sql.enabled:
|
|
794
|
+
# slow_sql.enabled: true
|
|
546
795
|
|
|
547
796
|
# If true, the agent collects explain plans in slow SQL queries. If this setting
|
|
548
|
-
# is omitted, the transaction_tracer.
|
|
797
|
+
# is omitted, the transaction_tracer.explain_enabled setting will be applied as
|
|
549
798
|
# the default setting for explain plans in slow SQL as well.
|
|
550
|
-
# slow_sql.explain_enabled:
|
|
799
|
+
# slow_sql.explain_enabled: true
|
|
551
800
|
|
|
552
801
|
# Specify a threshold in seconds. The agent collects slow SQL queries and
|
|
553
802
|
# explain plans that exceed this threshold.
|
|
554
|
-
# slow_sql.explain_threshold:
|
|
803
|
+
# slow_sql.explain_threshold: 0.5
|
|
555
804
|
|
|
556
|
-
# Defines an obfuscation level for slow SQL queries.
|
|
557
|
-
#
|
|
558
|
-
# slow_sql.record_sql:
|
|
805
|
+
# Defines an obfuscation level for slow SQL queries. Valid options are
|
|
806
|
+
# obfuscated, raw, or none.
|
|
807
|
+
# slow_sql.record_sql: obfuscated
|
|
559
808
|
|
|
560
809
|
# Generate a longer sql_id for slow SQL traces. sql_id is used for aggregation
|
|
561
810
|
# of similar queries.
|
|
562
811
|
# slow_sql.use_longer_sql_id: false
|
|
563
812
|
|
|
564
813
|
# If true, the agent captures attributes on span events.
|
|
565
|
-
#
|
|
566
|
-
|
|
567
|
-
# Defines the maximum number of span events reported from a single harvest.
|
|
568
|
-
# This can be any integer between 1 and 10000. Increasing this value may impact
|
|
569
|
-
# memory usage.
|
|
570
|
-
# span_events.max_samples_stored: 2000
|
|
814
|
+
# span_events.attributes.enabled: true
|
|
571
815
|
|
|
572
816
|
# Prefix of attributes to exclude from span events. Allows * as wildcard at end.
|
|
573
817
|
# span_events.attributes.exclude: []
|
|
@@ -578,6 +822,12 @@ common: &default_settings
|
|
|
578
822
|
# If true, enables span event sampling.
|
|
579
823
|
# span_events.enabled: true
|
|
580
824
|
|
|
825
|
+
# - Defines the maximum number of span events reported from a single harvest.
|
|
826
|
+
# Any Integer between 1 and 10000 is valid.'
|
|
827
|
+
# - When configuring the agent for AI monitoring, set to max value 10000.This
|
|
828
|
+
# ensures the agent captures the maximum amount of distributed traces.
|
|
829
|
+
# span_events.max_samples_stored: 2000
|
|
830
|
+
|
|
581
831
|
# Sets the maximum number of span events to buffer when streaming to the trace
|
|
582
832
|
# observer.
|
|
583
833
|
# span_events.queue_size: 10000
|
|
@@ -588,13 +838,36 @@ common: &default_settings
|
|
|
588
838
|
# strip_exception_messages.allowed_classes: ""
|
|
589
839
|
|
|
590
840
|
# If true, the agent strips messages from all exceptions except those in the
|
|
591
|
-
#
|
|
592
|
-
# strip_exception_messages.enabled:
|
|
841
|
+
# allowed classes list. Enabled automatically in high security mode.
|
|
842
|
+
# strip_exception_messages.enabled: false
|
|
843
|
+
|
|
844
|
+
# An array of strings to specify which keys and/or values inside a Stripe
|
|
845
|
+
# event's user_data hash should
|
|
846
|
+
# not be reported to New Relic. Each string in this array will be turned into a
|
|
847
|
+
# regular expression via
|
|
848
|
+
# Regexp.new to permit advanced matching. For each hash pair, if either the key
|
|
849
|
+
# or value is matched the pair
|
|
850
|
+
# isn't reported. By default, no user_data is reported. Use this option only if
|
|
851
|
+
# the
|
|
852
|
+
# stripe.user_data.include option is also used.
|
|
853
|
+
# stripe.user_data.exclude: []
|
|
854
|
+
|
|
855
|
+
# An array of strings to specify which keys inside a Stripe event's user_data
|
|
856
|
+
# hash should be reported
|
|
857
|
+
# to New Relic. Each string in this array will be turned into a regular
|
|
858
|
+
# expression via Regexp.new to
|
|
859
|
+
# enable advanced matching. Setting the value to ["."] will report all
|
|
860
|
+
# user_data.
|
|
861
|
+
# stripe.user_data.include: []
|
|
593
862
|
|
|
594
863
|
# When set to true, forces a synchronous connection to the New Relic collector
|
|
595
|
-
# during application startup. For very short-lived processes, this helps ensure
|
|
864
|
+
# during application startup. For very short-lived processes, this helps ensure
|
|
865
|
+
# the New Relic agent has time to report.
|
|
596
866
|
# sync_startup: false
|
|
597
867
|
|
|
868
|
+
# If true, tracer state storage is thread-local, otherwise, fiber-local
|
|
869
|
+
# thread_local_tracer_state: false
|
|
870
|
+
|
|
598
871
|
# If true, enables use of the thread profiler.
|
|
599
872
|
# thread_profiler.enabled: false
|
|
600
873
|
|
|
@@ -603,50 +876,57 @@ common: &default_settings
|
|
|
603
876
|
# timeout: 120
|
|
604
877
|
|
|
605
878
|
# If true, the agent captures attributes from transaction events.
|
|
606
|
-
#
|
|
879
|
+
# transaction_events.attributes.enabled: true
|
|
607
880
|
|
|
608
|
-
# Prefix of attributes to exclude from transaction events.
|
|
609
|
-
#
|
|
881
|
+
# Prefix of attributes to exclude from transaction events. Allows * as wildcard
|
|
882
|
+
# at end.
|
|
610
883
|
# transaction_events.attributes.exclude: []
|
|
611
884
|
|
|
612
|
-
# Prefix of attributes to include in transaction events.
|
|
613
|
-
#
|
|
885
|
+
# Prefix of attributes to include in transaction events. Allows * as wildcard at
|
|
886
|
+
# end.
|
|
614
887
|
# transaction_events.attributes.include: []
|
|
615
888
|
|
|
889
|
+
# If true, enables transaction event sampling.
|
|
890
|
+
# transaction_events.enabled: true
|
|
891
|
+
|
|
892
|
+
# Defines the maximum number of transaction events reported from a single
|
|
893
|
+
# harvest.
|
|
894
|
+
# transaction_events.max_samples_stored: 1200
|
|
895
|
+
|
|
616
896
|
# If true, the agent captures attributes on transaction segments.
|
|
617
|
-
#
|
|
897
|
+
# transaction_segments.attributes.enabled: true
|
|
618
898
|
|
|
619
|
-
# Prefix of attributes to exclude from transaction segments.
|
|
620
|
-
#
|
|
899
|
+
# Prefix of attributes to exclude from transaction segments. Allows * as
|
|
900
|
+
# wildcard at end.
|
|
621
901
|
# transaction_segments.attributes.exclude: []
|
|
622
902
|
|
|
623
|
-
# Prefix of attributes to include on transaction segments.
|
|
624
|
-
#
|
|
903
|
+
# Prefix of attributes to include on transaction segments. Allows * as wildcard
|
|
904
|
+
# at end.
|
|
625
905
|
# transaction_segments.attributes.include: []
|
|
626
906
|
|
|
627
907
|
# If true, the agent captures attributes from transaction traces.
|
|
628
|
-
# transaction_tracer.attributes.enabled:
|
|
908
|
+
# transaction_tracer.attributes.enabled: true
|
|
629
909
|
|
|
630
|
-
# Prefix of attributes to exclude from transaction traces.
|
|
631
|
-
#
|
|
910
|
+
# Prefix of attributes to exclude from transaction traces. Allows * as wildcard
|
|
911
|
+
# at end.
|
|
632
912
|
# transaction_tracer.attributes.exclude: []
|
|
633
913
|
|
|
634
|
-
# Prefix of attributes to include in transaction traces.
|
|
635
|
-
#
|
|
914
|
+
# Prefix of attributes to include in transaction traces. Allows * as wildcard at
|
|
915
|
+
# end.
|
|
636
916
|
# transaction_tracer.attributes.include: []
|
|
637
917
|
|
|
638
918
|
# If true, enables collection of transaction traces.
|
|
639
919
|
# transaction_tracer.enabled: true
|
|
640
920
|
|
|
921
|
+
# If true, enables the collection of explain plans in transaction traces. This
|
|
922
|
+
# setting will also apply to explain plans in slow SQL traces if
|
|
923
|
+
# slow_sql.explain_enabled isn't set separately.
|
|
924
|
+
# transaction_tracer.explain_enabled: true
|
|
925
|
+
|
|
641
926
|
# Threshold (in seconds) above which the agent will collect explain plans.
|
|
642
|
-
# Relevant only when
|
|
927
|
+
# Relevant only when explain_enabled is true.
|
|
643
928
|
# transaction_tracer.explain_threshold: 0.5
|
|
644
929
|
|
|
645
|
-
# If true, enables the collection of explain plans in transaction traces.
|
|
646
|
-
# This setting will also apply to explain plans in slow SQL traces if
|
|
647
|
-
# slow_sql.explain enabled is not set separately.
|
|
648
|
-
# transaction_tracer.explain.enabled: true
|
|
649
|
-
|
|
650
930
|
# Maximum number of transaction trace nodes to record in a single transaction
|
|
651
931
|
# trace.
|
|
652
932
|
# transaction_tracer.limit_segments: 4000
|
|
@@ -656,11 +936,12 @@ common: &default_settings
|
|
|
656
936
|
|
|
657
937
|
# Obfuscation level for SQL queries reported in transaction trace nodes.
|
|
658
938
|
# By default, this is set to obfuscated, which strips out the numeric and string
|
|
659
|
-
# literals.
|
|
660
|
-
#
|
|
661
|
-
#
|
|
662
|
-
#
|
|
663
|
-
#
|
|
939
|
+
# literals.
|
|
940
|
+
# - If you do not want the agent to capture query information, set this to none.
|
|
941
|
+
# - If you want the agent to capture all query information in its original form,
|
|
942
|
+
# set this to raw.
|
|
943
|
+
# - When you enable high security mode, this is automatically set to obfuscated.
|
|
944
|
+
# transaction_tracer.record_sql: obfuscated
|
|
664
945
|
|
|
665
946
|
# Specify a threshold in seconds. The agent includes stack traces in transaction
|
|
666
947
|
# trace nodes when the stack trace duration exceeds this threshold.
|
|
@@ -689,9 +970,134 @@ common: &default_settings
|
|
|
689
970
|
# If true, the agent automatically detects that it is running in Kubernetes.
|
|
690
971
|
# utilization.detect_kubernetes: true
|
|
691
972
|
|
|
692
|
-
# If true, the agent automatically detects that it is running in a Pivotal Cloud
|
|
973
|
+
# If true, the agent automatically detects that it is running in a Pivotal Cloud
|
|
974
|
+
# Foundry environment.
|
|
693
975
|
# utilization.detect_pcf: true
|
|
694
976
|
|
|
977
|
+
# BEGIN security agent
|
|
978
|
+
#
|
|
979
|
+
# NOTE: At this time, the security agent is intended for use only within
|
|
980
|
+
# a dedicated security testing environment with data that can tolerate
|
|
981
|
+
# modification or deletion. The security agent is available as a
|
|
982
|
+
# separate Ruby gem, newrelic_security. It is recommended that this
|
|
983
|
+
# separate gem only be introduced to a security testing environment
|
|
984
|
+
# by leveraging Bundler grouping like so:
|
|
985
|
+
#
|
|
986
|
+
# # Gemfile
|
|
987
|
+
# gem 'newrelic_rpm' # New Relic APM observability agent
|
|
988
|
+
# gem 'newrelic-infinite_tracing' # New Relic Infinite Tracing
|
|
989
|
+
#
|
|
990
|
+
# group :security do
|
|
991
|
+
# gem 'newrelic_security', require: false # New Relic security agent
|
|
992
|
+
# end
|
|
993
|
+
#
|
|
994
|
+
# NOTE: All "security.*" configuration parameters are related only to the
|
|
995
|
+
# security agent, and all other configuration parameters that may
|
|
996
|
+
# have "security" in the name somewhere are related to the APM agent.
|
|
997
|
+
|
|
998
|
+
# If true, the security agent is loaded (a Ruby 'require' is performed)
|
|
999
|
+
# security.agent.enabled: false
|
|
1000
|
+
|
|
1001
|
+
# The port the application is listening on. This setting is mandatory for
|
|
1002
|
+
# Passenger servers. The agent detects other servers by default.
|
|
1003
|
+
# security.application_info.port: nil
|
|
1004
|
+
|
|
1005
|
+
# If true, the security agent is started (the agent runs in its event loop)
|
|
1006
|
+
# security.enabled: false
|
|
1007
|
+
|
|
1008
|
+
# Defines API paths the security agent should ignore in IAST scans. Accepts an
|
|
1009
|
+
# array of regex patterns matching the URI to ignore. The regex pattern should
|
|
1010
|
+
# find a complete match for the URL without the endpoint. For example,
|
|
1011
|
+
# [".*account.*"], [".*/\api\/v1\/.*?\/login"]
|
|
1012
|
+
# security.exclude_from_iast_scan.api: []
|
|
1013
|
+
|
|
1014
|
+
# An array of HTTP request body keys the security agent should ignore in IAST
|
|
1015
|
+
# scans.
|
|
1016
|
+
# security.exclude_from_iast_scan.http_request_parameters.body: []
|
|
1017
|
+
|
|
1018
|
+
# An array of HTTP request headers the security agent should ignore in IAST
|
|
1019
|
+
# scans. The array should specify a list of patterns matching the headers to
|
|
1020
|
+
# ignore.
|
|
1021
|
+
# security.exclude_from_iast_scan.http_request_parameters.header: []
|
|
1022
|
+
|
|
1023
|
+
# An array of HTTP request query parameters the security agent should ignore in
|
|
1024
|
+
# IAST scans. The array should specify a list of patterns matching the HTTP
|
|
1025
|
+
# request query parameters to ignore.
|
|
1026
|
+
# security.exclude_from_iast_scan.http_request_parameters.query: []
|
|
1027
|
+
|
|
1028
|
+
# If true, disables system command injection detection in IAST scans.
|
|
1029
|
+
# security.exclude_from_iast_scan.iast_detection_category.command_injection: false
|
|
1030
|
+
|
|
1031
|
+
# If true, disables the detection of low-severity insecure settings. For
|
|
1032
|
+
# example, hash, crypto, cookie, random generators, trust boundary).
|
|
1033
|
+
# security.exclude_from_iast_scan.iast_detection_category.insecure_settings: false
|
|
1034
|
+
|
|
1035
|
+
# If true, disables file operation-related IAST detections (File Access &
|
|
1036
|
+
# Application integrity violation)
|
|
1037
|
+
# security.exclude_from_iast_scan.iast_detection_category.invalid_file_access: false
|
|
1038
|
+
|
|
1039
|
+
# If true, disables Javascript injection detection in IAST scans.
|
|
1040
|
+
# security.exclude_from_iast_scan.iast_detection_category.javascript_injection: false
|
|
1041
|
+
|
|
1042
|
+
# If true, disables LDAP injection detection in IAST scans.
|
|
1043
|
+
# security.exclude_from_iast_scan.iast_detection_category.ldap_injection: false
|
|
1044
|
+
|
|
1045
|
+
# If true, disables NOSQL injection detection in IAST scans.
|
|
1046
|
+
# security.exclude_from_iast_scan.iast_detection_category.nosql_injection: false
|
|
1047
|
+
|
|
1048
|
+
# If true, disables Reflected Cross-Site Scripting (RXSS) detection in IAST
|
|
1049
|
+
# scans.
|
|
1050
|
+
# security.exclude_from_iast_scan.iast_detection_category.rxss: false
|
|
1051
|
+
|
|
1052
|
+
# If true, disables SQL injection detection in IAST scans.
|
|
1053
|
+
# security.exclude_from_iast_scan.iast_detection_category.sql_injection: false
|
|
1054
|
+
|
|
1055
|
+
# If true, disables Sever-Side Request Forgery (SSRF) detection in IAST scans.
|
|
1056
|
+
# security.exclude_from_iast_scan.iast_detection_category.ssrf: false
|
|
1057
|
+
|
|
1058
|
+
# If true, disables XPATH injection detection in IAST scans.
|
|
1059
|
+
# security.exclude_from_iast_scan.iast_detection_category.xpath_injection: false
|
|
1060
|
+
|
|
1061
|
+
# A unique test identifier when runnning IAST in a CI/CD environment to
|
|
1062
|
+
# differentiate between different test runs. For example, a build number.
|
|
1063
|
+
# security.iast_test_identifier: nil
|
|
1064
|
+
|
|
1065
|
+
# Defines the mode for the security agent to operate in. Currently only IAST is
|
|
1066
|
+
# supported
|
|
1067
|
+
# security.mode: IAST
|
|
1068
|
+
|
|
1069
|
+
# Sets the maximum number of HTTP requests allowed for the IAST scan per minute.
|
|
1070
|
+
# Any Integer between 12 and 3600 is valid. The default value is 3600.
|
|
1071
|
+
# security.scan_controllers.iast_scan_request_rate_limit: 3600
|
|
1072
|
+
|
|
1073
|
+
# If true, enables the sending of HTTP responses bodies. Disabling this also
|
|
1074
|
+
# disables Reflected Cross-Site Scripting (RXSS) vulnerability detection.
|
|
1075
|
+
# security.scan_controllers.report_http_response_body: true
|
|
1076
|
+
|
|
1077
|
+
# The number of application instances for a specific entity to perform IAST
|
|
1078
|
+
# analysis on.
|
|
1079
|
+
# security.scan_controllers.scan_instance_count: 0
|
|
1080
|
+
|
|
1081
|
+
# If true, allows IAST to continuously gather trace data in the background. The
|
|
1082
|
+
# security agent uses collected data to perform an IAST scan at the scheduled
|
|
1083
|
+
# time.
|
|
1084
|
+
# security.scan_schedule.always_sample_traces: false
|
|
1085
|
+
|
|
1086
|
+
# Specifies the delay time (in minutes) before the IAST scan begins after the
|
|
1087
|
+
# application starts.
|
|
1088
|
+
# security.scan_schedule.delay: 0
|
|
1089
|
+
|
|
1090
|
+
# Indicates the duration (in minutes) for which the IAST scan will be performed.
|
|
1091
|
+
# security.scan_schedule.duration: 0
|
|
1092
|
+
|
|
1093
|
+
# Specifies a cron expression that sets when the IAST scan should run.
|
|
1094
|
+
# security.scan_schedule.schedule: ""
|
|
1095
|
+
|
|
1096
|
+
# Defines the endpoint URL for posting security-related data
|
|
1097
|
+
# security.validator_service_url: wss://csec.nr-data.net
|
|
1098
|
+
|
|
1099
|
+
# END security agent
|
|
1100
|
+
|
|
695
1101
|
# Environment-specific settings are in this section.
|
|
696
1102
|
# RAILS_ENV or RACK_ENV (as appropriate) is used to determine the environment.
|
|
697
1103
|
# If your application has other named environments, configure them here.
|