public void WhenLevelMappingIsSpecifiedPriorityIsComputed(LogEventLevel level, Priority expectedPriority) { using var app = new OpsgenieApp { ApiClient = new TestOpsgenieApiClient(), DefaultPriority = Priority.P2.ToString(), PriorityProperty = "@Level", EventPriority = "Warning=P3,Debug=P1" }; app.Attach(TestAppHost.Instance); var evt = Some.LogEvent(level: level); var priority = app.ComputePriority(evt); Assert.Equal(expectedPriority, priority); }
public void WhenMappedPropertyIsMissingPriorityIsDefault() { using var app = new OpsgenieApp { ApiClient = new TestOpsgenieApiClient(), DefaultPriority = Priority.P2.ToString(), PriorityProperty = "Test", EventPriority = "B=P3,A=P1" }; app.Attach(TestAppHost.Instance); var evt = Some.LogEvent(); var priority = app.ComputePriority(evt); Assert.Equal(Priority.P2, priority); }
public void WhenValueMappingIsSpecifiedPriorityIsComputed(object value, Priority expectedPriority) { using var app = new OpsgenieApp { ApiClient = new TestOpsgenieApiClient(), DefaultPriority = Priority.P2.ToString(), PriorityProperty = "Test", EventPriority = "B=P3,A=P1" }; app.Attach(TestAppHost.Instance); var evt = Some.LogEvent(include: new Dictionary <string, object> { ["Test"] = value }); var priority = app.ComputePriority(evt); Assert.Equal(expectedPriority, priority); }
public async Task AppTriggersAlerts() { var apiClient = new TestOpsgenieApiClient(); using var app = new OpsgenieApp { AlertMessage = "Test", Tags = "First, Second, Third", ApiClient = apiClient }; app.Attach(TestAppHost.Instance); var evt = Some.LogEvent(); await app.OnAsync(evt); var alert = Assert.Single(apiClient.CreatedAlerts); Assert.Equal("Test", alert !.Message); Assert.Equal(evt.Id, alert.Alias); Assert.Equal(new[] { "First", "Second", "Third" }, alert.Tags); }