private void assertCanResolveType(String conditionType) { IdProvider provider = EntityResolver.defaultInstance().getIdProvider(conditionType); assertNotNull("Should resolve id for " + conditionType, provider); } }
@Before public void setUp() { when(alertsPoliciesApiMock.getByName(POLICY_NAME)).thenReturn(Optional.of(POLICY)); when(entityResolverMock.resolveEntities(apiMock, APP_CONDITION)).thenReturn(Collections.singletonList(APPLICATION_ENTITY_ID)); }
public String resolveEntity(NewRelicApi api, SyntheticsCondition condition) { return getUuidProvider(SyntheticsCondition.class.getSimpleName()).getUuid(api, condition.getMonitorName()); }
@Test public void resolveEntities_shouldResolveExternalServiceConditionEntities() { // given ExternalServiceCondition condition = mock(ExternalServiceCondition.class); when(condition.getType()).thenReturn(ExternalServiceConditionType.APM); when(condition.getEntities()).thenReturn(Arrays.asList("e1", "e2")); when(idProviderMock.getId(apiMock, "e1")).thenReturn(1); when(idProviderMock.getId(apiMock, "e2")).thenReturn(2); // when Collection<Integer> ids = testee.resolveEntities(apiMock, condition); // then assertThat(ids).containsExactly(1, 2); verify(testee).getIdProvider(ExternalServiceConditionType.APM.getTypeString()); }
public Collection<Integer> resolveEntities(NewRelicApi api, ExternalServiceCondition condition) { IdProvider idProvider = getIdProvider(condition.getType().getTypeString()); return condition.getEntities().stream() .map(e -> idProvider.getId(api, e)) .collect(Collectors.toList()); }
/** * NewRelic Alerts configurator constructor * * @param apiKey API Key for given NewRelic account */ public Configurator(@NonNull String apiKey) { NewRelicApi api = new NewRelicApi(apiKey); applicationConfigurator = new ApplicationConfigurator(api); policyConfigurator = new PolicyConfigurator(api); conditionConfigurator = new ConditionConfigurator(api, EntityResolver.defaultInstance()); externalServiceConditionConfigurator = new ExternalServiceConditionConfigurator(api, EntityResolver.defaultInstance()); nrqlConditionConfigurator = new NrqlConditionConfigurator(api); syntheticsConditionConfigurator = new SyntheticsConditionConfigurator(api, EntityResolver.defaultInstance()); channelConfigurator = new ChannelConfigurator(api); }
@Override protected AlertsSyntheticsCondition convertFromConfigItem(SyntheticsCondition condition) { return AlertsSyntheticsCondition.builder() .name(condition.getConditionName()) .monitorId(entityResolver.resolveEntity(api, condition)) .enabled(condition.isEnabled()) .runbookUrl(condition.getRunBookUrl()) .build(); }
@Test public void resolveEntities_shouldResolveConditionEntities() { // given Condition condition = mock(Condition.class); when(condition.getType()).thenReturn(ConditionType.APM_KEY_TRANSACTION); when(condition.getEntities()).thenReturn(Arrays.asList("e1", "e2")); when(idProviderMock.getId(apiMock, "e1")).thenReturn(1); when(idProviderMock.getId(apiMock, "e2")).thenReturn(2); // when Collection<Integer> ids = testee.resolveEntities(apiMock, condition); // then assertThat(ids).containsExactly(1, 2); verify(testee).getIdProvider(ConditionType.APM_KEY_TRANSACTION.getTypeString()); }
public Collection<Integer> resolveEntities(NewRelicApi api, Condition condition) { IdProvider idProvider = getIdProvider(condition.getType().getTypeString()); return condition.getEntities().stream() .map(e -> idProvider.getId(api, e)) .collect(Collectors.toList()); }
@Before public void setUp() { when(alertsPoliciesApiMock.getByName(POLICY_NAME)).thenReturn(Optional.of(POLICY)); when(entityResolverMock.resolveEntities(apiMock, APP_CONDITION)).thenReturn(Collections.singletonList(APPLICATION_ENTITY_ID)); }
@Before public void setUp() { when(alertsPoliciesApiMock.getByName(POLICY_NAME)).thenReturn(Optional.of(POLICY)); when(entityResolverMock.resolveEntities(apiMock, APP_CONDITION)).thenReturn(Collections.singletonList(APPLICATION_ENTITY_ID)); }
@Before public void setUp() { super.setUp(); when(entityResolverMock.resolveEntities(apiMock, EXTERNAL_SERVICE_CONDITION)).thenReturn(Collections.singletonList(APPLICATION_ENTITY_ID)); testee = new ExternalServiceConditionConfigurator(apiMock, entityResolverMock); }
@Before public void setUp() { super.setUp(); when(entityResolverMock.resolveEntities(apiMock, APP_CONDITION)).thenReturn(Collections.singletonList(APPLICATION_ENTITY_ID)); testee = new ConditionConfigurator(apiMock, entityResolverMock); }
@Override protected AlertsExternalServiceCondition convertFromConfigItem(ExternalServiceCondition condition) { return AlertsExternalServiceCondition.builder() .type(condition.getTypeString()) .name(condition.getConditionName()) .enabled(condition.isEnabled()) .entities(entityResolver.resolveEntities(api, condition)) .metric(condition.getMetric()) .externalServiceUrl(condition.getExternalServiceUrl()) .runbookUrl(condition.getRunBookUrl()) .terms(TermsUtils.createTerms(condition.getTerms())) .build(); }
@Override protected AlertsCondition convertFromConfigItem(Condition condition) { return AlertsCondition.builder() .type(condition.getType().getTypeString()) .name(condition.getConditionName()) .enabled(condition.isEnabled()) .entities(entityResolver.resolveEntities(api, condition)) .metric(condition.getMetricAsString()) .conditionScope(condition.getConditionScopeAsString()) .runbookUrl(condition.getRunBookUrl()) .terms(TermsUtils.createTerms(condition.getTerms())) .violationCloseTimer(condition.getViolationCloseTimerAsString()) .userDefined(UserDefinedUtils.createUserDefined(condition.getUserDefinedMetric())) .gcMetric(condition.getGcMetricAsString()) .build(); }