Exemple #1
0
        public Agent(ITransactionService transactionService, ITransactionTransformer transactionTransformer,
                     IThreadPoolStatic threadPoolStatic, ITransactionMetricNameMaker transactionMetricNameMaker, IPathHashMaker pathHashMaker,
                     ICatHeaderHandler catHeaderHandler, IDistributedTracePayloadHandler distributedTracePayloadHandler,
                     ISyntheticsHeaderHandler syntheticsHeaderHandler, ITransactionFinalizer transactionFinalizer,
                     IBrowserMonitoringPrereqChecker browserMonitoringPrereqChecker, IBrowserMonitoringScriptMaker browserMonitoringScriptMaker,
                     IConfigurationService configurationService, IAgentHealthReporter agentHealthReporter, IAgentTimerService agentTimerService,
                     IMetricNameService metricNameService, Api.ITraceMetadataFactory traceMetadataFactory, ICATSupportabilityMetricCounters catMetricCounters)
        {
            _transactionService         = transactionService;
            _transactionTransformer     = transactionTransformer;
            _threadPoolStatic           = threadPoolStatic;
            _transactionMetricNameMaker = transactionMetricNameMaker;
            _pathHashMaker    = pathHashMaker;
            _catHeaderHandler = catHeaderHandler;
            _distributedTracePayloadHandler = distributedTracePayloadHandler;
            _syntheticsHeaderHandler        = syntheticsHeaderHandler;
            _transactionFinalizer           = transactionFinalizer;
            _browserMonitoringPrereqChecker = browserMonitoringPrereqChecker;
            _browserMonitoringScriptMaker   = browserMonitoringScriptMaker;
            _configurationService           = configurationService;
            _agentHealthReporter            = agentHealthReporter;
            _agentTimerService    = agentTimerService;
            _metricNameService    = metricNameService;
            _traceMetadataFactory = traceMetadataFactory;
            _catMetricCounters    = catMetricCounters;

            Instance = this;
        }
 public AgentApiImplementation(ITransactionService transactionService, ICustomEventTransformer customEventTransformer, IMetricBuilder metricBuilder, IMetricAggregator metricAggregator, ICustomErrorDataTransformer customErrorDataTransformer, IBrowserMonitoringPrereqChecker browserMonitoringPrereqChecker, IBrowserMonitoringScriptMaker browserMonitoringScriptMaker, IConfigurationService configurationService, IAgent agent, ITracePriorityManager tracePriorityManager, IApiSupportabilityMetricCounters apiSupportabilityMetricCounters, IErrorService errorService)
 {
     _transactionService             = transactionService;
     _customEventTransformer         = customEventTransformer;
     _metricBuilder                  = metricBuilder;
     _metricAggregator               = metricAggregator;
     _customErrorDataTransformer     = customErrorDataTransformer;
     _browserMonitoringPrereqChecker = browserMonitoringPrereqChecker;
     _browserMonitoringScriptMaker   = browserMonitoringScriptMaker;
     _configurationService           = configurationService;
     _agent                = agent;
     _agentBridgeApi       = new AgentBridgeApi(_agent, apiSupportabilityMetricCounters, _configurationService);
     _tracePriorityManager = tracePriorityManager;
     _errorService         = errorService;
 }
        private void SetUp(TestCase testCase)
        {
            _environment = Mock.Create <IEnvironment>();

            Mock.Arrange(() => _environment.GetEnvironmentVariable(Arg.IsAny <string>()))
            .Returns(null as string);

            _processStatic              = Mock.Create <IProcessStatic>();
            _httpRuntimeStatic          = Mock.Create <IHttpRuntimeStatic>();
            _configurationManagerStatic = new ConfigurationManagerStaticMock();
            _dnsStatic = Mock.Create <IDnsStatic>();
            _securityPoliciesConfiguration = new SecurityPoliciesConfiguration();

            _runTimeConfiguration = new RunTimeConfiguration();
            _serverConfig         = new ServerConfiguration();
            _localConfig          = new configuration();


            _localConfig.crossApplicationTracingEnabled = true;
            _localConfig.attributes.enabled             = true;
            _localConfig.service.licenseKey             = testCase.LicenseKey;
            _localConfig.appSettings.Add(new configurationAdd()
            {
                key = "NewRelic.LicenseKey", value = testCase.LicenseKey
            });
            _serverConfig.RumSettingsJavaScriptAgentLoader = "JSAGENT";
            _serverConfig.RumSettingsJavaScriptAgentFile   = testCase.ConnectReply.JsAgentFile;
            _serverConfig.RumSettingsBeacon = testCase.ConnectReply.Beacon;

            _serverConfig.RumSettingsErrorBeacon              = testCase.ConnectReply.ErrorBeacon;
            _serverConfig.RumSettingsBrowserKey               = testCase.ConnectReply.BrowserKey;
            _serverConfig.RumSettingsApplicationId            = testCase.ConnectReply.ApplicationId;
            _localConfig.browserMonitoring.attributes.enabled = testCase.BrowserMonitoringAttributesEnabled;

            _configuration        = new TestableDefaultConfiguration(_environment, _localConfig, _serverConfig, _runTimeConfiguration, _securityPoliciesConfiguration, _processStatic, _httpRuntimeStatic, _configurationManagerStatic, _dnsStatic);
            _configurationService = Mock.Create <IConfigurationService>();
            Mock.Arrange(() => _configurationService.Configuration).Returns(_configuration);

            _configAutoResponder = new ConfigurationAutoResponder(_configuration);

            _transactionMetricNameMaker = Mock.Create <ITransactionMetricNameMaker>();
            _attribDefSvc = new AttributeDefinitionService((f) => new AttributeDefinitions(f));
            _transactionAttributeMaker    = new TransactionAttributeMaker(_configurationService, _attribDefSvc);
            _browserMonitoringScriptMaker = new BrowserMonitoringScriptMaker(_configurationService, _transactionMetricNameMaker, _transactionAttributeMaker, _attribDefSvc);
        }