[privacy] make observability local-only
This commit is contained in:
@@ -8,24 +8,8 @@ require 'rails/all'
|
||||
# you've limited to :test, :development, or :production.
|
||||
Bundler.require(*Rails.groups)
|
||||
|
||||
## Load the specific APM agent
|
||||
# We rely on DOTENV to load the environment variables
|
||||
# We need these environment variables to load the specific APM agent
|
||||
## Load application dependencies
|
||||
Dotenv::Rails.load
|
||||
require 'datadog' if ENV.fetch('DD_TRACE_AGENT_URL', false).present?
|
||||
require 'elastic-apm' if ENV.fetch('ELASTIC_APM_SECRET_TOKEN', false).present?
|
||||
require 'scout_apm' if ENV.fetch('SCOUT_KEY', false).present?
|
||||
|
||||
if ENV.fetch('NEW_RELIC_LICENSE_KEY', false).present?
|
||||
require 'newrelic-sidekiq-metrics'
|
||||
require 'newrelic_rpm'
|
||||
end
|
||||
|
||||
if ENV.fetch('SENTRY_DSN', false).present?
|
||||
require 'sentry-ruby'
|
||||
require 'sentry-rails'
|
||||
require 'sentry-sidekiq'
|
||||
end
|
||||
|
||||
# heroku autoscaling
|
||||
if ENV.fetch('JUDOSCALE_URL', false).present?
|
||||
|
||||
@@ -1,5 +0,0 @@
|
||||
# Disabled by default to prevent the agent starting up when not required
|
||||
# To enable, set your ELASTIC_APM_SERVER_URL and ELASTIC_APM_SECRET_TOKEN in your .env
|
||||
# Additional configuration options can be set below, as per the docs: https://www.elastic.co/guide/en/apm/agent/ruby/current/configuration.html#configuration
|
||||
|
||||
enabled: <%= ENV.fetch('ELASTIC_APM_SECRET_TOKEN', false).present? %>
|
||||
@@ -1,6 +0,0 @@
|
||||
if ENV['DD_TRACE_AGENT_URL'].present?
|
||||
Datadog.configure do |c|
|
||||
# Instrumentation
|
||||
c.tracing.instrument :rails
|
||||
end
|
||||
end
|
||||
@@ -1,15 +0,0 @@
|
||||
if ENV['SENTRY_DSN'].present?
|
||||
Sentry.init do |config|
|
||||
config.dsn = ENV['SENTRY_DSN']
|
||||
config.enabled_environments = %w[staging production]
|
||||
|
||||
# To activate performance monitoring, set one of these options.
|
||||
# We recommend adjusting the value in production:
|
||||
config.traces_sample_rate = 0.1 if ENV['ENABLE_SENTRY_TRANSACTIONS']
|
||||
|
||||
config.excluded_exceptions += ['Rack::Timeout::RequestTimeoutException', 'MutexApplicationJob::LockAcquisitionError']
|
||||
|
||||
# to track post data in sentry
|
||||
config.send_default_pii = true unless ENV['DISABLE_SENTRY_PII']
|
||||
end
|
||||
end
|
||||
@@ -1,63 +0,0 @@
|
||||
#
|
||||
# This file configures the New Relic Agent. New Relic monitors Ruby, Java,
|
||||
# .NET, PHP, Python, Node, and Go applications with deep visibility and low
|
||||
# overhead. For more information, visit www.newrelic.com.
|
||||
#
|
||||
#
|
||||
# For full documentation of agent configuration options, please refer to
|
||||
# https://docs.newrelic.com/docs/agents/ruby-agent/installation-configuration/ruby-agent-configuration
|
||||
|
||||
common: &default_settings
|
||||
# Required license key associated with your New Relic account.
|
||||
license_key: <%= ENV['NEW_RELIC_LICENSE_KEY'] %>
|
||||
|
||||
# Your application name. Renaming here affects where data displays in New
|
||||
# Relic. For more details, see https://docs.newrelic.com/docs/apm/new-relic-apm/maintenance/renaming-applications
|
||||
app_name: <%= ENV.fetch('NEW_RELIC_APP_NAME', 'Chatwoot') %>
|
||||
|
||||
distributed_tracing:
|
||||
enabled: true
|
||||
|
||||
# To disable the agent regardless of other settings, uncomment the following:
|
||||
agent_enabled: <%= ENV['NEW_RELIC_LICENSE_KEY'].present? && ENV.fetch('NEW_RELIC_AGENT_ENABLED', true) %>
|
||||
|
||||
# Logging level for log/newrelic_agent.log
|
||||
log_level: <%= ENV.fetch('NEW_RELIC_LOG_LEVEL', 'info') %>
|
||||
|
||||
application_logging:
|
||||
# If `true`, all logging-related features for the agent can be enabled or disabled
|
||||
# independently. If `false`, all logging-related features are disabled.
|
||||
enabled: <%= ENV.fetch('NEW_RELIC_APPLICATION_LOGGING_ENABLED', false) %>
|
||||
forwarding:
|
||||
# If `true`, the agent captures log records emitted by this application
|
||||
enabled: <%= ENV.fetch('NEW_RELIC_APPLICATION_LOGGING_FORWARDING_ENABLED', true) == "false" ? false : true %>
|
||||
# Defines the maximum number of log records to buffer in memory at a time.
|
||||
max_samples_stored: 30000
|
||||
metrics:
|
||||
# If `true`, the agent captures metrics related to logging for this application.
|
||||
enabled: true
|
||||
local_decorating:
|
||||
# If `true`, the agent decorates logs with metadata to link to entities, hosts, traces, and spans.
|
||||
# This requires a log forwarder to send your log files to New Relic.
|
||||
# This should not be used when forwarding is enabled.
|
||||
enabled: <%= ENV.fetch('NEW_RELIC_APPLICATION_LOGGING_DECORATING_ENABLED', false) %>
|
||||
|
||||
|
||||
# Environment-specific settings are in this section.
|
||||
# RAILS_ENV or RACK_ENV (as appropriate) is used to determine the environment.
|
||||
# If your application has other named environments, configure them here.
|
||||
development:
|
||||
<<: *default_settings
|
||||
app_name: <%= ENV.fetch('NEW_RELIC_APP_NAME', 'Chatwoot') %> (Development)
|
||||
|
||||
test:
|
||||
<<: *default_settings
|
||||
# It doesn't make sense to report to New Relic from automated test runs.
|
||||
monitor_mode: false
|
||||
|
||||
staging:
|
||||
<<: *default_settings
|
||||
app_name: <%= ENV.fetch('NEW_RELIC_APP_NAME', 'Chatwoot') %> (Staging)
|
||||
|
||||
production:
|
||||
<<: *default_settings
|
||||
@@ -1,10 +0,0 @@
|
||||
common: &defaults
|
||||
name: <%= ENV.fetch('SCOUT_NAME', '') %>
|
||||
key: <%= ENV.fetch('SCOUT_KEY', '') %>
|
||||
monitor: <%= ENV['SCOUT_KEY'].present? && ENV.fetch('SCOUT_MONITOR', true) %>
|
||||
|
||||
test:
|
||||
monitor: <%= ENV['SCOUT_KEY'].present? && ENV.fetch('SCOUT_MONITOR', true) %>
|
||||
|
||||
production:
|
||||
<<: *defaults
|
||||
Reference in New Issue
Block a user