Search in sources :

Example 76 with MockRPMService

use of com.newrelic.agent.MockRPMService in project newrelic-java-agent by newrelic.

the class TransactionNamingTest method setTransactionRules.

private String setTransactionRules(JSONArray metricRules) {
    MockRPMServiceManager rpmServiceManager = (MockRPMServiceManager) ServiceFactory.getRPMServiceManager();
    List<ConnectionListener> connectionListeners = rpmServiceManager.getConnectionListeners();
    ConnectionListener connectionListener = connectionListeners.get(0);
    MockRPMService rpmService = (MockRPMService) rpmServiceManager.getRPMService();
    String appName = rpmService.getApplicationName();
    Map<String, Object> data = new HashMap<>();
    data.put(NormalizationRuleConfig.TRANSACTION_NAME_RULES_KEY, metricRules);
    connectionListener.connected(rpmService, AgentConfigImpl.createAgentConfig(data));
    return appName;
}
Also used : HashMap(java.util.HashMap) MockRPMServiceManager(com.newrelic.agent.MockRPMServiceManager) JSONObject(org.json.simple.JSONObject) ConnectionListener(com.newrelic.agent.ConnectionListener) MockRPMService(com.newrelic.agent.MockRPMService)

Example 77 with MockRPMService

use of com.newrelic.agent.MockRPMService in project newrelic-java-agent by newrelic.

the class ErrorServiceTest method userParametersEnabledRequestDisabled.

@SuppressWarnings("unchecked")
@Test
public void userParametersEnabledRequestDisabled() throws Exception {
    Map<String, Object> config = createConfig("java.lang.Exception");
    setConfigAttributes(config, true, false);
    EventTestHelper.createServiceManager(config);
    ErrorServiceImpl errorService = (ErrorServiceImpl) ServiceFactory.getRPMService().getErrorService();
    MockRPMService rpmService = (MockRPMService) ServiceFactory.getRPMService();
    rpmService.setIsConnected(true);
    TransactionService txService = ServiceFactory.getTransactionService();
    Throwable error = new ArrayIndexOutOfBoundsException();
    Map<String, String> requestParams = new HashMap<>();
    requestParams.put("key1", "value1");
    Map<String, Object> agentParams = new HashMap<>();
    agentParams.put("key2", 2L);
    Map<String, Object> userParams = new HashMap<>();
    userParams.put("key3", "value3");
    Map<String, Object> errorParams = new HashMap<>();
    errorParams.put("key4", "value4");
    Map<String, Object> intrinsics = new HashMap<>();
    intrinsics.put("key5", "value5");
    intrinsics.put("key6", 7.77);
    intrinsics.put("key7", 18L);
    TransactionData data = createTransactionData(true, 0, error, false, requestParams, userParams, agentParams, errorParams, intrinsics);
    TransactionStats transactionStats = new TransactionStats();
    txService.transactionFinished(data, transactionStats);
    List<TracedError> actualErrors = errorService.getAndClearTracedErrors(APP_NAME, new StatsEngineImpl());
    Assert.assertEquals(1, actualErrors.size());
    JSONArray serializedError = (JSONArray) AgentHelper.serializeJSON(actualErrors.get(0));
    Assert.assertNotNull(serializedError);
    Map<String, Object> params = (Map<String, Object>) serializedError.get(4);
    Assert.assertEquals(4, params.size());
    Assert.assertNotNull(params.get("stack_trace"));
    Assert.assertNotNull(params.get("intrinsics"));
    Assert.assertNotNull(params.get("agentAttributes"));
    Assert.assertNotNull(params.get("userAttributes"));
    Map<String, Object> actual = (Map<String, Object>) params.get("intrinsics");
    Assert.assertEquals(8, actual.size());
    Assert.assertEquals("value5", actual.get("key5"));
    Assert.assertEquals(7.77, (Double) actual.get("key6"), .001);
    Assert.assertEquals(18L, actual.get("key7"));
    Assert.assertEquals(false, actual.get("error.expected"));
    actual = (Map<String, Object>) params.get("agentAttributes");
    Assert.assertEquals(2, actual.size());
    Assert.assertEquals(2L, actual.get("key2"));
    Assert.assertEquals("/dude", actual.get("request.uri"));
    actual = (Map<String, Object>) params.get("userAttributes");
    Assert.assertEquals(2, actual.size());
    Assert.assertEquals("value3", actual.get("key3"));
    Assert.assertEquals("value4", actual.get("key4"));
}
Also used : TransactionService(com.newrelic.agent.TransactionService) StatsEngineImpl(com.newrelic.agent.stats.StatsEngineImpl) HashMap(java.util.HashMap) JSONArray(org.json.simple.JSONArray) TransactionStats(com.newrelic.agent.stats.TransactionStats) TransactionData(com.newrelic.agent.TransactionData) HashMap(java.util.HashMap) Map(java.util.Map) MockRPMService(com.newrelic.agent.MockRPMService) Test(org.junit.Test)

Example 78 with MockRPMService

use of com.newrelic.agent.MockRPMService in project newrelic-java-agent by newrelic.

the class ErrorServiceTest method userParametersEnabled.

@SuppressWarnings("unchecked")
@Test
public void userParametersEnabled() throws Exception {
    Map<String, Object> config = createConfig("java.lang.Exception");
    setConfigAttributes(config, true, true);
    EventTestHelper.createServiceManager(config);
    ErrorServiceImpl errorService = (ErrorServiceImpl) ServiceFactory.getRPMService().getErrorService();
    MockRPMService rpmService = (MockRPMService) ServiceFactory.getRPMService();
    rpmService.setIsConnected(true);
    TransactionService txService = ServiceFactory.getTransactionService();
    Throwable error = new ArrayIndexOutOfBoundsException();
    Map<String, String> requestParams = new HashMap<>();
    requestParams.put("key1", "value1");
    Map<String, Object> agentParams = new HashMap<>();
    agentParams.put("key2", 2L);
    Map<String, Object> userParams = new HashMap<>();
    userParams.put("key3", "value3");
    Map<String, Object> errorParams = new HashMap<>();
    errorParams.put("key4", "value4");
    Map<String, Object> intrinsics = new HashMap<>();
    intrinsics.put("key5", "value5");
    intrinsics.put("key6", 7.77);
    intrinsics.put("key7", 18L);
    TransactionData data = createTransactionData(true, 0, error, false, requestParams, userParams, agentParams, errorParams, intrinsics);
    TransactionStats transactionStats = new TransactionStats();
    txService.transactionFinished(data, transactionStats);
    List<TracedError> actualErrors = errorService.getAndClearTracedErrors(APP_NAME, new StatsEngineImpl());
    Assert.assertEquals(1, actualErrors.size());
    JSONArray serializedError = (JSONArray) AgentHelper.serializeJSON(actualErrors.get(0));
    Assert.assertNotNull(serializedError);
    Map<String, Object> params = (Map<String, Object>) serializedError.get(4);
    Assert.assertEquals(4, params.size());
    Assert.assertNotNull(params.get("stack_trace"));
    Assert.assertNotNull(params.get("intrinsics"));
    Assert.assertNotNull(params.get("agentAttributes"));
    Assert.assertNotNull(params.get("userAttributes"));
    Map<String, Object> actual = (Map<String, Object>) params.get("intrinsics");
    Assert.assertEquals(8, actual.size());
    Assert.assertEquals("value5", actual.get("key5"));
    Assert.assertEquals(7.77, (Double) actual.get("key6"), .001);
    Assert.assertEquals(18L, actual.get("key7"));
    Assert.assertEquals(false, actual.get("error.expected"));
    actual = (Map<String, Object>) params.get("agentAttributes");
    Assert.assertEquals(3, actual.size());
    Assert.assertEquals("value1", actual.get("request.parameters.key1"));
    Assert.assertEquals(2L, actual.get("key2"));
    Assert.assertEquals("/dude", actual.get("request.uri"));
    actual = (Map<String, Object>) params.get("userAttributes");
    Assert.assertEquals(2, actual.size());
    Assert.assertEquals("value3", actual.get("key3"));
    Assert.assertEquals("value4", actual.get("key4"));
}
Also used : TransactionService(com.newrelic.agent.TransactionService) StatsEngineImpl(com.newrelic.agent.stats.StatsEngineImpl) HashMap(java.util.HashMap) JSONArray(org.json.simple.JSONArray) TransactionStats(com.newrelic.agent.stats.TransactionStats) TransactionData(com.newrelic.agent.TransactionData) HashMap(java.util.HashMap) Map(java.util.Map) MockRPMService(com.newrelic.agent.MockRPMService) Test(org.junit.Test)

Example 79 with MockRPMService

use of com.newrelic.agent.MockRPMService in project newrelic-java-agent by newrelic.

the class ErrorServiceTest method attributesDisabled.

@SuppressWarnings("unchecked")
@Test
public void attributesDisabled() throws Exception {
    Map<String, Object> config = createConfig("java.lang.Exception");
    setConfigAttributes(config, false, true);
    EventTestHelper.createServiceManager(config);
    ErrorServiceImpl errorService = (ErrorServiceImpl) ServiceFactory.getRPMService().getErrorService();
    MockRPMService rpmService = (MockRPMService) ServiceFactory.getRPMService();
    rpmService.setIsConnected(true);
    TransactionService txService = ServiceFactory.getTransactionService();
    Throwable error = new ArrayIndexOutOfBoundsException();
    Map<String, String> requestParams = new HashMap<>();
    requestParams.put("key1", "value1");
    Map<String, Object> agentParams = new HashMap<>();
    agentParams.put("key2", 2L);
    Map<String, Object> userParams = new HashMap<>();
    userParams.put("key3", "value3");
    Map<String, Object> errorParams = new HashMap<>();
    errorParams.put("key4", "value4");
    Map<String, Object> intrinsics = new HashMap<>();
    TransactionData data = createTransactionData(true, 0, error, false, requestParams, userParams, agentParams, errorParams, intrinsics);
    TransactionStats transactionStats = new TransactionStats();
    txService.transactionFinished(data, transactionStats);
    List<TracedError> actualErrors = errorService.getAndClearTracedErrors(APP_NAME, new StatsEngineImpl());
    Assert.assertEquals(1, actualErrors.size());
    JSONArray serializedError = (JSONArray) AgentHelper.serializeJSON(actualErrors.get(0));
    Assert.assertNotNull(serializedError);
    Map<String, Object> params = (Map<String, Object>) serializedError.get(4);
    Assert.assertEquals(2, params.size());
    Assert.assertNotNull(params.get("stack_trace"));
    Map<String, Object> intrinsicsParam = (Map<String, Object>) params.get("intrinsics");
    Assert.assertEquals(false, intrinsicsParam.get("error.expected"));
}
Also used : TransactionService(com.newrelic.agent.TransactionService) StatsEngineImpl(com.newrelic.agent.stats.StatsEngineImpl) HashMap(java.util.HashMap) JSONArray(org.json.simple.JSONArray) TransactionStats(com.newrelic.agent.stats.TransactionStats) TransactionData(com.newrelic.agent.TransactionData) HashMap(java.util.HashMap) Map(java.util.Map) MockRPMService(com.newrelic.agent.MockRPMService) Test(org.junit.Test)

Example 80 with MockRPMService

use of com.newrelic.agent.MockRPMService in project newrelic-java-agent by newrelic.

the class ErrorServiceTest method attributesDisabledWithIntrinsics.

@SuppressWarnings("unchecked")
@Test
public void attributesDisabledWithIntrinsics() throws Exception {
    Map<String, Object> config = createConfig("java.lang.Exception");
    setConfigAttributes(config, false, true);
    EventTestHelper.createServiceManager(config);
    ErrorServiceImpl errorService = (ErrorServiceImpl) ServiceFactory.getRPMService().getErrorService();
    MockRPMService rpmService = (MockRPMService) ServiceFactory.getRPMService();
    rpmService.setIsConnected(true);
    TransactionService txService = ServiceFactory.getTransactionService();
    Throwable error = new ArrayIndexOutOfBoundsException();
    Map<String, String> requestParams = new HashMap<>();
    requestParams.put("key1", "value1");
    Map<String, Object> agentParams = new HashMap<>();
    agentParams.put("key2", 2L);
    Map<String, Object> userParams = new HashMap<>();
    userParams.put("key3", "value3");
    Map<String, Object> errorParams = new HashMap<>();
    errorParams.put("key4", "value4");
    Map<String, Object> intrinsics = new HashMap<>();
    intrinsics.put("key5", "value5");
    TransactionData data = createTransactionData(true, 0, error, false, requestParams, userParams, agentParams, errorParams, intrinsics);
    TransactionStats transactionStats = new TransactionStats();
    txService.transactionFinished(data, transactionStats);
    List<TracedError> actualErrors = errorService.getAndClearTracedErrors(APP_NAME, new StatsEngineImpl());
    Assert.assertEquals(1, actualErrors.size());
    JSONArray serializedError = (JSONArray) AgentHelper.serializeJSON(actualErrors.get(0));
    Assert.assertNotNull(serializedError);
    Map<String, Object> params = (Map<String, Object>) serializedError.get(4);
    Assert.assertEquals(2, params.size());
    Assert.assertNotNull(params.get("stack_trace"));
    Assert.assertNotNull(params.get("intrinsics"));
    Map<String, Object> actual = (Map<String, Object>) params.get("intrinsics");
    Assert.assertEquals(6, actual.size());
    Assert.assertEquals("value5", actual.get("key5"));
    Assert.assertEquals(false, actual.get("error.expected"));
}
Also used : TransactionService(com.newrelic.agent.TransactionService) StatsEngineImpl(com.newrelic.agent.stats.StatsEngineImpl) HashMap(java.util.HashMap) JSONArray(org.json.simple.JSONArray) TransactionStats(com.newrelic.agent.stats.TransactionStats) TransactionData(com.newrelic.agent.TransactionData) HashMap(java.util.HashMap) Map(java.util.Map) MockRPMService(com.newrelic.agent.MockRPMService) Test(org.junit.Test)

Aggregations

MockRPMService (com.newrelic.agent.MockRPMService)97 Test (org.junit.Test)59 MockRPMServiceManager (com.newrelic.agent.MockRPMServiceManager)44 MockServiceManager (com.newrelic.agent.MockServiceManager)39 MockHarvestService (com.newrelic.agent.MockHarvestService)30 HashMap (java.util.HashMap)28 TransactionService (com.newrelic.agent.TransactionService)26 ConfigService (com.newrelic.agent.config.ConfigService)21 MockCoreService (com.newrelic.agent.MockCoreService)20 StatsEngineImpl (com.newrelic.agent.stats.StatsEngineImpl)18 HarvestService (com.newrelic.agent.HarvestService)17 ErrorServiceImpl (com.newrelic.agent.errors.ErrorServiceImpl)17 ThreadService (com.newrelic.agent.ThreadService)15 StatsService (com.newrelic.agent.stats.StatsService)15 TransactionTraceService (com.newrelic.agent.trace.TransactionTraceService)15 OtherRootSqlTracer (com.newrelic.agent.tracers.OtherRootSqlTracer)15 SqlTracer (com.newrelic.agent.tracers.SqlTracer)15 Tracer (com.newrelic.agent.tracers.Tracer)15 BasicRequestRootTracer (com.newrelic.agent.tracers.servlet.BasicRequestRootTracer)15 TransactionData (com.newrelic.agent.TransactionData)14