Spaces:
Running
Running
# --------------------------------------------------------------------------- | |
# | |
# This file configures the New Relic Python Agent. | |
# | |
# The path to the configuration file should be supplied to the function | |
# newrelic.agent.initialize() when the agent is being initialized. | |
# | |
# The configuration file follows a structure similar to what you would | |
# find for Microsoft Windows INI files. For further information on the | |
# configuration file format see the Python ConfigParser documentation at: | |
# | |
# http://docs.python.org/library/configparser.html | |
# | |
# For further discussion on the behaviour of the Python agent that can | |
# be configured via this configuration file see: | |
# | |
# https://docs.newrelic.com/docs/apm/agents/python-agent/configuration/python-agent-configuration/ | |
# | |
# --------------------------------------------------------------------------- | |
# Here are the settings that are common to all environments. | |
[newrelic] | |
# You must specify the license key associated with your New | |
# Relic account. This may also be set using the NEW_RELIC_LICENSE_KEY | |
# environment variable. This key binds the Python Agent's data to | |
# your account in the New Relic service. For more information on | |
# storing and generating license keys, see | |
# https://docs.newrelic.com/docs/apis/intro-apis/new-relic-api-keys/#ingest-license-key | |
# The application name. Set this to be the name of your | |
# application as you would like it to show up in New Relic UI. | |
# You may also set this using the NEW_RELIC_APP_NAME environment variable. | |
# The UI will then auto-map instances of your application into a | |
# entry on your home dashboard page. You can also specify multiple | |
# app names to group your aggregated data. For further details, | |
# please see: | |
# https://docs.newrelic.com/docs/apm/agents/manage-apm-agents/app-naming/use-multiple-names-app/ | |
app_name = news_aggregator | |
# When "true", the agent collects performance data about your | |
# application and reports this data to the New Relic UI at | |
# newrelic.com. This global switch is normally overridden for | |
# each environment below. It may also be set using the | |
# NEW_RELIC_MONITOR_MODE environment variable. | |
monitor_mode = true | |
# Sets the name of a file to log agent messages to. Whatever you | |
# set this to, you must ensure that the permissions for the | |
# containing directory and the file itself are correct, and | |
# that the user that your web application runs as can write out | |
# to the file. If not able to out a log file, it is also | |
# possible to say "stderr" and output to standard error output. | |
# This would normally result in output appearing in your web | |
# server log. It can also be set using the NEW_RELIC_LOG | |
# environment variable. | |
log_file = stdout | |
# Sets the level of detail of messages sent to the log file, if | |
# a log file location has been provided. Possible values, in | |
# increasing order of detail, are: "critical", "error", "warning", | |
# "info" and "debug". When reporting any agent issues to New | |
# Relic technical support, the most useful setting for the | |
# support engineers is "debug". However, this can generate a lot | |
# of information very quickly, so it is best not to keep the | |
# agent at this level for longer than it takes to reproduce the | |
# problem you are experiencing. This may also be set using the | |
# NEW_RELIC_LOG_LEVEL environment variable. | |
log_level = info | |
# High Security Mode enforces certain security settings, and prevents | |
# them from being overridden, so that no sensitive data is sent to New | |
# Relic. Enabling High Security Mode means that request parameters are | |
# not collected and SQL can not be sent to New Relic in its raw form. | |
# To activate High Security Mode, it must be set to 'true' in this | |
# local .ini configuration file AND be set to 'true' in the | |
# server-side configuration in the New Relic user interface. It can | |
# also be set using the NEW_RELIC_HIGH_SECURITY environment variable. | |
# For details, see | |
# https://docs.newrelic.com/docs/subscriptions/high-security | |
high_security = false | |
# The Python Agent will attempt to connect directly to the New | |
# Relic service. If there is an intermediate firewall between | |
# your host and the New Relic service that requires you to use a | |
# HTTP proxy, then you should set both the "proxy_host" and | |
# "proxy_port" settings to the required values for the HTTP | |
# proxy. The "proxy_user" and "proxy_pass" settings should | |
# additionally be set if proxy authentication is implemented by | |
# the HTTP proxy. The "proxy_scheme" setting dictates what | |
# protocol scheme is used in talking to the HTTP proxy. This | |
# would normally always be set as "http" which will result in the | |
# agent then using a SSL tunnel through the HTTP proxy for end to | |
# end encryption. | |
# See https://docs.newrelic.com/docs/apm/agents/python-agent/configuration/python-agent-configuration/#proxy | |
# for information on proxy configuration via environment variables. | |
# proxy_scheme = http | |
# proxy_host = hostname | |
# proxy_port = 8080 | |
# proxy_user = | |
# proxy_pass = | |
# Capturing request parameters is off by default. To enable the | |
# capturing of request parameters, first ensure that the setting | |
# "attributes.enabled" is set to "true" (the default value), and | |
# then add "request.parameters.*" to the "attributes.include" | |
# setting. For details about attributes configuration, please | |
# consult the documentation. | |
# attributes.include = request.parameters.* | |
# The transaction tracer captures deep information about slow | |
# transactions and sends this to the UI on a periodic basis. The | |
# transaction tracer is enabled by default. Set this to "false" | |
# to turn it off. | |
transaction_tracer.enabled = true | |
# Threshold in seconds for when to collect a transaction trace. | |
# When the response time of a controller action exceeds this | |
# threshold, a transaction trace will be recorded and sent to | |
# the UI. Valid values are any positive float value, or (default) | |
# "apdex_f", which will use the threshold for a dissatisfying | |
# Apdex controller action - four times the Apdex T value. | |
transaction_tracer.transaction_threshold = apdex_f | |
# When the transaction tracer is on, SQL statements can | |
# optionally be recorded. The recorder has three modes, "off" | |
# which sends no SQL, "raw" which sends the SQL statement in its | |
# original form, and "obfuscated", which strips out numeric and | |
# string literals. | |
transaction_tracer.record_sql = obfuscated | |
# Threshold in seconds for when to collect stack trace for a SQL | |
# call. In other words, when SQL statements exceed this | |
# threshold, then capture and send to the UI the current stack | |
# trace. This is helpful for pinpointing where long SQL calls | |
# originate from in an application. | |
transaction_tracer.stack_trace_threshold = 0.5 | |
# Determines whether the agent will capture query plans for slow | |
# SQL queries. Only supported in MySQL and PostgreSQL. Set this | |
# to "false" to turn it off. | |
transaction_tracer.explain_enabled = true | |
# Threshold for query execution time below which query plans | |
# will not not be captured. Relevant only when "explain_enabled" | |
# is true. | |
transaction_tracer.explain_threshold = 0.5 | |
# Space separated list of function or method names in form | |
# 'module:function' or 'module:class.function' for which | |
# additional function timing instrumentation will be added. | |
transaction_tracer.function_trace = | |
# The error collector captures information about uncaught | |
# exceptions or logged exceptions and sends them to UI for | |
# viewing. The error collector is enabled by default. Set this | |
# to "false" to turn it off. For more details on errors, see | |
# https://docs.newrelic.com/docs/apm/agents/manage-apm-agents/agent-data/manage-errors-apm-collect-ignore-or-mark-expected/ | |
error_collector.enabled = true | |
# To stop specific errors from reporting to the UI, set this to | |
# a space separated list of the Python exception type names to | |
# ignore. The exception name should be of the form 'module:class'. | |
error_collector.ignore_classes = | |
# Expected errors are reported to the UI but will not affect the | |
# Apdex or error rate. To mark specific errors as expected, set this | |
# to a space separated list of the Python exception type names to | |
# expected. The exception name should be of the form 'module:class'. | |
error_collector.expected_classes = | |
# Browser monitoring is the Real User Monitoring feature of the UI. | |
# For those Python web frameworks that are supported, this | |
# setting enables the auto-insertion of the browser monitoring | |
# JavaScript fragments. | |
browser_monitoring.auto_instrument = true | |
# A thread profiling session can be scheduled via the UI when | |
# this option is enabled. The thread profiler will periodically | |
# capture a snapshot of the call stack for each active thread in | |
# the application to construct a statistically representative | |
# call tree. For more details on the thread profiler tool, see | |
# https://docs.newrelic.com/docs/apm/apm-ui-pages/events/thread-profiler-tool/ | |
thread_profiler.enabled = true | |
# Your application deployments can be recorded through the | |
# New Relic REST API. To use this feature provide your API key | |
# below then use the `newrelic-admin record-deploy` command. | |
# This can also be set using the NEW_RELIC_API_KEY | |
# environment variable. | |
# api_key = | |
# Distributed tracing lets you see the path that a request takes | |
# through your distributed system. For more information, please | |
# consult our distributed tracing planning guide. | |
# https://docs.newrelic.com/docs/transition-guide-distributed-tracing | |
distributed_tracing.enabled = true | |
# This setting enables log decoration, the forwarding of log events, | |
# and the collection of logging metrics if these sub-feature | |
# configurations are also enabled. If this setting is false, no | |
# logging instrumentation features are enabled. This can also be | |
# set using the NEW_RELIC_APPLICATION_LOGGING_ENABLED environment | |
# variable. | |
# application_logging.enabled = true | |
# If true, the agent captures log records emitted by your application | |
# and forwards them to New Relic. `application_logging.enabled` must | |
# also be true for this setting to take effect. You can also set | |
# this using the NEW_RELIC_APPLICATION_LOGGING_FORWARDING_ENABLED | |
# environment variable. | |
# application_logging.forwarding.enabled = true | |
# If true, the agent decorates logs with metadata to link to entities, | |
# hosts, traces, and spans. `application_logging.enabled` must also | |
# be true for this setting to take effect. This can also be set | |
# using the NEW_RELIC_APPLICATION_LOGGING_LOCAL_DECORATING_ENABLED | |
# environment variable. | |
# application_logging.local_decorating.enabled = true | |
# If true, the agent captures metrics related to the log lines | |
# being sent up by your application. This can also be set | |
# using the NEW_RELIC_APPLICATION_LOGGING_METRICS_ENABLED | |
# environment variable. | |
# application_logging.metrics.enabled = true | |
# --------------------------------------------------------------------------- | |
# | |
# The application environments. These are specific settings which | |
# override the common environment settings. The settings related to a | |
# specific environment will be used when the environment argument to the | |
# newrelic.agent.initialize() function has been defined to be either | |
# "development", "test", "staging" or "production". | |
# | |
[newrelic:development] | |
monitor_mode = false | |
[newrelic:test] | |
monitor_mode = false | |
[newrelic:staging] | |
app_name = (Staging) | |
monitor_mode = true | |
[newrelic:production] | |
monitor_mode = true | |
# --------------------------------------------------------------------------- | |