Module: NurseAndrea

Defined in:
lib/nurse_andrea/self_filter.rb,
lib/nurse_andrea.rb,
lib/nurse_andrea/deploy.rb,
lib/nurse_andrea/engine.rb,
lib/nurse_andrea/errors.rb,
lib/nurse_andrea/railtie.rb,
lib/nurse_andrea/version.rb,
lib/nurse_andrea/backfill.rb,
lib/nurse_andrea/sanitizer.rb,
lib/nurse_andrea/http_client.rb,
lib/nurse_andrea/log_shipper.rb,
lib/nurse_andrea/configuration.rb,
lib/nurse_andrea/memory_sampler.rb,
lib/nurse_andrea/slug_validator.rb,
lib/nurse_andrea/log_interceptor.rb,
lib/nurse_andrea/metrics_shipper.rb,
lib/nurse_andrea/boot_diagnostics.rb,
lib/nurse_andrea/query_subscriber.rb,
lib/nurse_andrea/platform_detector.rb,
lib/nurse_andrea/continuous_scanner.rb,
lib/nurse_andrea/metrics_middleware.rb,
lib/nurse_andrea/component_telemetry.rb,
lib/nurse_andrea/job_instrumentation.rb,
lib/nurse_andrea/environment_detector.rb,
lib/nurse_andrea/queue_depth_reporter.rb,
lib/nurse_andrea/managed_service_scanner.rb,
lib/nurse_andrea/instrumentation_subscriber.rb,
app/controllers/nurse_andrea/status_controller.rb,
lib/generators/nurse_andrea/install/install_generator.rb

Overview

PRIVACY: This file reads environment variable values to derive component metadata. Raw values never leave this process. Only derived metadata (type, tech, provider) is transmitted. See DATA_PRIVACY_POLICY.rb for the full policy.

Defined Under Namespace

Modules: BootDiagnostics, Deploy, Generators, JobInstrumentation, ManagedServiceScanner, PlatformDetector, Sanitizer, SelfFilter Classes: Backfill, ComponentTelemetry, Configuration, ConfigurationError, ContinuousScanner, Engine, EnvironmentDetector, Error, HttpClient, InstrumentationSubscriber, LogInterceptor, LogShipper, MemorySampler, MetricsMiddleware, MetricsShipper, MigrationError, QuerySubscriber, QueueDepthReporter, Railtie, SlugValidator, StatusController

Constant Summary collapse

VERSION =
"1.4.0"

Class Method Summary collapse

Class Method Details

.component_discoveriesObject



89
90
91
# File 'lib/nurse_andrea.rb', line 89

def component_discoveries
  @component_discoveries ||= []
end

.configObject



74
75
76
# File 'lib/nurse_andrea.rb', line 74

def config
  @config ||= Configuration.new
end

.configure {|config| ... } ⇒ Object

Yields:



70
71
72
# File 'lib/nurse_andrea.rb', line 70

def configure
  yield(config)
end

.debug(message) ⇒ Object



97
98
99
100
# File 'lib/nurse_andrea.rb', line 97

def debug(message)
  return unless config.debug
  $stderr.puts(message)
end

.deploy(**kwargs) ⇒ Object

Convenience top-level: NurseAndrea.deploy(version: “1.4.2”)



32
33
34
# File 'lib/nurse_andrea/deploy.rb', line 32

def self.deploy(**kwargs)
  Deploy.call(**kwargs)
end

.instrumentation_subscriberObject



85
86
87
# File 'lib/nurse_andrea.rb', line 85

def instrumentation_subscriber
  @instrumentation_subscriber ||= InstrumentationSubscriber.new
end

.platform_contextObject



93
94
95
# File 'lib/nurse_andrea.rb', line 93

def platform_context
  @platform_context ||= PlatformDetector.context
end

.reset_config!Object



78
79
80
81
82
83
# File 'lib/nurse_andrea.rb', line 78

def reset_config!
  @config = nil
  @instrumentation_subscriber = nil
  @component_discoveries = nil
  @platform_context = nil
end