pagerduty.EventOrchestrationService
Explore with Pulumi AI
A Service Orchestration allows you to create a set of Event Rules. The Service Orchestration evaluates Events sent to this Service against each of its rules, beginning with the rules in the “start” set. When a matching rule is found, it can modify and enhance the event and can route the event to another set of rules within this Service Orchestration for further processing.
If you have a Service that uses Service Event Rules, you can switch to Service Orchestrations at any time setting the attribute
enable_event_orchestration_for_service
totrue
. Please read the Switch to Service Orchestrations instructions for more information.
Example of configuring a Service Orchestration
This example shows creating Team
, User
, Escalation Policy
, and Service
resources followed by creating a Service Orchestration to handle Events sent to that Service.
This example also shows using the pagerduty.getPriority and pagerduty.EscalationPolicy data sources to configure priority
and escalation_policy
actions for a rule.
This example shows a Service Orchestration that has nested sets: a rule in the “start” set has a route_to
action pointing at the “step-two” set.
The catch_all
actions will be applied if an Event reaches the end of any set without matching any rules in that set. In this example the catch_all
doesn’t have any actions
so it’ll leave events as-is.
import * as pulumi from "@pulumi/pulumi";
import * as pagerduty from "@pulumi/pagerduty";
const engineering = new pagerduty.Team("engineering", {name: "Engineering"});
const example = new pagerduty.User("example", {
name: "Earline Greenholt",
email: "125.greenholt.earline@graham.name",
});
const foo = new pagerduty.TeamMembership("foo", {
userId: example.id,
teamId: engineering.id,
role: "manager",
});
const exampleEscalationPolicy = new pagerduty.EscalationPolicy("example", {
name: "Engineering Escalation Policy",
numLoops: 2,
rules: [{
escalationDelayInMinutes: 10,
targets: [{
type: "user_reference",
id: example.id,
}],
}],
});
const exampleService = new pagerduty.Service("example", {
name: "My Web App",
autoResolveTimeout: "14400",
acknowledgementTimeout: "600",
escalationPolicy: exampleEscalationPolicy.id,
alertCreation: "create_alerts_and_incidents",
});
const csImpact = new pagerduty.IncidentCustomField("cs_impact", {
name: "impact",
dataType: "string",
fieldType: "single_value",
});
const p1 = pagerduty.getPriority({
name: "P1",
});
const sreEscPolicy = pagerduty.getEscalationPolicy({
name: "SRE Escalation Policy",
});
const www = new pagerduty.EventOrchestrationService("www", {
service: exampleService.id,
enableEventOrchestrationForService: true,
sets: [
{
id: "start",
rules: [{
label: "Always apply some consistent event transformations to all events",
actions: {
variables: [{
name: "hostname",
path: "event.component",
value: "hostname: (.*)",
type: "regex",
}],
extractions: [
{
template: "{{variables.hostname}}",
target: "event.custom_details.hostname",
},
{
source: "event.source",
regex: "www (.*) service",
target: "event.source",
},
],
routeTo: "step-two",
},
}],
},
{
id: "step-two",
rules: [
{
label: "All critical alerts should be treated as P1 incident",
conditions: [{
expression: "event.severity matches 'critical'",
}],
actions: {
annotate: "Please use our P1 runbook: https://docs.test/p1-runbook",
priority: p1.then(p1 => p1.id),
incidentCustomFieldUpdates: [{
id: csImpact.id,
value: "High Impact",
}],
},
},
{
label: "If any of the API apps are unavailable, page the SRE team",
conditions: [{
expression: "event.custom_details.service_name matches part '-api' and event.custom_details.status_code matches '502'",
}],
actions: {
escalationPolicy: sreEscPolicy.then(sreEscPolicy => sreEscPolicy.id),
},
},
{
label: "If there's something wrong on the canary let the team know about it in our deployments Slack channel",
conditions: [{
expression: "event.custom_details.hostname matches part 'canary'",
}],
actions: {
automationAction: {
name: "Canary Slack Notification",
url: "https://our-slack-listerner.test/canary-notification",
autoSend: true,
parameters: [
{
key: "channel",
value: "#my-team-channel",
},
{
key: "message",
value: "something is wrong with the canary deployment",
},
],
headers: [{
key: "X-Notification-Source",
value: "PagerDuty Incident Webhook",
}],
},
},
},
{
label: "Never bother the on-call for info-level events outside of work hours",
conditions: [{
expression: "event.severity matches 'info' and not (now in Mon,Tue,Wed,Thu,Fri 09:00:00 to 17:00:00 America/Los_Angeles)",
}],
actions: {
suppress: true,
},
},
],
},
],
catchAll: {
actions: {},
},
});
import pulumi
import pulumi_pagerduty as pagerduty
engineering = pagerduty.Team("engineering", name="Engineering")
example = pagerduty.User("example",
name="Earline Greenholt",
email="125.greenholt.earline@graham.name")
foo = pagerduty.TeamMembership("foo",
user_id=example.id,
team_id=engineering.id,
role="manager")
example_escalation_policy = pagerduty.EscalationPolicy("example",
name="Engineering Escalation Policy",
num_loops=2,
rules=[{
"escalation_delay_in_minutes": 10,
"targets": [{
"type": "user_reference",
"id": example.id,
}],
}])
example_service = pagerduty.Service("example",
name="My Web App",
auto_resolve_timeout="14400",
acknowledgement_timeout="600",
escalation_policy=example_escalation_policy.id,
alert_creation="create_alerts_and_incidents")
cs_impact = pagerduty.IncidentCustomField("cs_impact",
name="impact",
data_type="string",
field_type="single_value")
p1 = pagerduty.get_priority(name="P1")
sre_esc_policy = pagerduty.get_escalation_policy(name="SRE Escalation Policy")
www = pagerduty.EventOrchestrationService("www",
service=example_service.id,
enable_event_orchestration_for_service=True,
sets=[
{
"id": "start",
"rules": [{
"label": "Always apply some consistent event transformations to all events",
"actions": {
"variables": [{
"name": "hostname",
"path": "event.component",
"value": "hostname: (.*)",
"type": "regex",
}],
"extractions": [
{
"template": "{{variables.hostname}}",
"target": "event.custom_details.hostname",
},
{
"source": "event.source",
"regex": "www (.*) service",
"target": "event.source",
},
],
"route_to": "step-two",
},
}],
},
{
"id": "step-two",
"rules": [
{
"label": "All critical alerts should be treated as P1 incident",
"conditions": [{
"expression": "event.severity matches 'critical'",
}],
"actions": {
"annotate": "Please use our P1 runbook: https://docs.test/p1-runbook",
"priority": p1.id,
"incident_custom_field_updates": [{
"id": cs_impact.id,
"value": "High Impact",
}],
},
},
{
"label": "If any of the API apps are unavailable, page the SRE team",
"conditions": [{
"expression": "event.custom_details.service_name matches part '-api' and event.custom_details.status_code matches '502'",
}],
"actions": {
"escalation_policy": sre_esc_policy.id,
},
},
{
"label": "If there's something wrong on the canary let the team know about it in our deployments Slack channel",
"conditions": [{
"expression": "event.custom_details.hostname matches part 'canary'",
}],
"actions": {
"automation_action": {
"name": "Canary Slack Notification",
"url": "https://our-slack-listerner.test/canary-notification",
"auto_send": True,
"parameters": [
{
"key": "channel",
"value": "#my-team-channel",
},
{
"key": "message",
"value": "something is wrong with the canary deployment",
},
],
"headers": [{
"key": "X-Notification-Source",
"value": "PagerDuty Incident Webhook",
}],
},
},
},
{
"label": "Never bother the on-call for info-level events outside of work hours",
"conditions": [{
"expression": "event.severity matches 'info' and not (now in Mon,Tue,Wed,Thu,Fri 09:00:00 to 17:00:00 America/Los_Angeles)",
}],
"actions": {
"suppress": True,
},
},
],
},
],
catch_all={
"actions": {},
})
package main
import (
"github.com/pulumi/pulumi-pagerduty/sdk/v4/go/pagerduty"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
engineering, err := pagerduty.NewTeam(ctx, "engineering", &pagerduty.TeamArgs{
Name: pulumi.String("Engineering"),
})
if err != nil {
return err
}
example, err := pagerduty.NewUser(ctx, "example", &pagerduty.UserArgs{
Name: pulumi.String("Earline Greenholt"),
Email: pulumi.String("125.greenholt.earline@graham.name"),
})
if err != nil {
return err
}
_, err = pagerduty.NewTeamMembership(ctx, "foo", &pagerduty.TeamMembershipArgs{
UserId: example.ID(),
TeamId: engineering.ID(),
Role: pulumi.String("manager"),
})
if err != nil {
return err
}
exampleEscalationPolicy, err := pagerduty.NewEscalationPolicy(ctx, "example", &pagerduty.EscalationPolicyArgs{
Name: pulumi.String("Engineering Escalation Policy"),
NumLoops: pulumi.Int(2),
Rules: pagerduty.EscalationPolicyRuleArray{
&pagerduty.EscalationPolicyRuleArgs{
EscalationDelayInMinutes: pulumi.Int(10),
Targets: pagerduty.EscalationPolicyRuleTargetArray{
&pagerduty.EscalationPolicyRuleTargetArgs{
Type: pulumi.String("user_reference"),
Id: example.ID(),
},
},
},
},
})
if err != nil {
return err
}
exampleService, err := pagerduty.NewService(ctx, "example", &pagerduty.ServiceArgs{
Name: pulumi.String("My Web App"),
AutoResolveTimeout: pulumi.String("14400"),
AcknowledgementTimeout: pulumi.String("600"),
EscalationPolicy: exampleEscalationPolicy.ID(),
AlertCreation: pulumi.String("create_alerts_and_incidents"),
})
if err != nil {
return err
}
csImpact, err := pagerduty.NewIncidentCustomField(ctx, "cs_impact", &pagerduty.IncidentCustomFieldArgs{
Name: pulumi.String("impact"),
DataType: pulumi.String("string"),
FieldType: pulumi.String("single_value"),
})
if err != nil {
return err
}
p1, err := pagerduty.GetPriority(ctx, &pagerduty.GetPriorityArgs{
Name: "P1",
}, nil)
if err != nil {
return err
}
sreEscPolicy, err := pagerduty.LookupEscalationPolicy(ctx, &pagerduty.LookupEscalationPolicyArgs{
Name: "SRE Escalation Policy",
}, nil)
if err != nil {
return err
}
_, err = pagerduty.NewEventOrchestrationService(ctx, "www", &pagerduty.EventOrchestrationServiceArgs{
Service: exampleService.ID(),
EnableEventOrchestrationForService: pulumi.Bool(true),
Sets: pagerduty.EventOrchestrationServiceSetArray{
&pagerduty.EventOrchestrationServiceSetArgs{
Id: pulumi.String("start"),
Rules: pagerduty.EventOrchestrationServiceSetRuleArray{
&pagerduty.EventOrchestrationServiceSetRuleArgs{
Label: pulumi.String("Always apply some consistent event transformations to all events"),
Actions: &pagerduty.EventOrchestrationServiceSetRuleActionsArgs{
Variables: pagerduty.EventOrchestrationServiceSetRuleActionsVariableArray{
&pagerduty.EventOrchestrationServiceSetRuleActionsVariableArgs{
Name: pulumi.String("hostname"),
Path: pulumi.String("event.component"),
Value: pulumi.String("hostname: (.*)"),
Type: pulumi.String("regex"),
},
},
Extractions: pagerduty.EventOrchestrationServiceSetRuleActionsExtractionArray{
&pagerduty.EventOrchestrationServiceSetRuleActionsExtractionArgs{
Template: pulumi.String("{{variables.hostname}}"),
Target: pulumi.String("event.custom_details.hostname"),
},
&pagerduty.EventOrchestrationServiceSetRuleActionsExtractionArgs{
Source: pulumi.String("event.source"),
Regex: pulumi.String("www (.*) service"),
Target: pulumi.String("event.source"),
},
},
RouteTo: pulumi.String("step-two"),
},
},
},
},
&pagerduty.EventOrchestrationServiceSetArgs{
Id: pulumi.String("step-two"),
Rules: pagerduty.EventOrchestrationServiceSetRuleArray{
&pagerduty.EventOrchestrationServiceSetRuleArgs{
Label: pulumi.String("All critical alerts should be treated as P1 incident"),
Conditions: pagerduty.EventOrchestrationServiceSetRuleConditionArray{
&pagerduty.EventOrchestrationServiceSetRuleConditionArgs{
Expression: pulumi.String("event.severity matches 'critical'"),
},
},
Actions: &pagerduty.EventOrchestrationServiceSetRuleActionsArgs{
Annotate: pulumi.String("Please use our P1 runbook: https://docs.test/p1-runbook"),
Priority: pulumi.String(p1.Id),
IncidentCustomFieldUpdates: pagerduty.EventOrchestrationServiceSetRuleActionsIncidentCustomFieldUpdateArray{
&pagerduty.EventOrchestrationServiceSetRuleActionsIncidentCustomFieldUpdateArgs{
Id: csImpact.ID(),
Value: pulumi.String("High Impact"),
},
},
},
},
&pagerduty.EventOrchestrationServiceSetRuleArgs{
Label: pulumi.String("If any of the API apps are unavailable, page the SRE team"),
Conditions: pagerduty.EventOrchestrationServiceSetRuleConditionArray{
&pagerduty.EventOrchestrationServiceSetRuleConditionArgs{
Expression: pulumi.String("event.custom_details.service_name matches part '-api' and event.custom_details.status_code matches '502'"),
},
},
Actions: &pagerduty.EventOrchestrationServiceSetRuleActionsArgs{
EscalationPolicy: pulumi.String(sreEscPolicy.Id),
},
},
&pagerduty.EventOrchestrationServiceSetRuleArgs{
Label: pulumi.String("If there's something wrong on the canary let the team know about it in our deployments Slack channel"),
Conditions: pagerduty.EventOrchestrationServiceSetRuleConditionArray{
&pagerduty.EventOrchestrationServiceSetRuleConditionArgs{
Expression: pulumi.String("event.custom_details.hostname matches part 'canary'"),
},
},
Actions: &pagerduty.EventOrchestrationServiceSetRuleActionsArgs{
AutomationAction: &pagerduty.EventOrchestrationServiceSetRuleActionsAutomationActionArgs{
Name: pulumi.String("Canary Slack Notification"),
Url: pulumi.String("https://our-slack-listerner.test/canary-notification"),
AutoSend: pulumi.Bool(true),
Parameters: pagerduty.EventOrchestrationServiceSetRuleActionsAutomationActionParameterArray{
&pagerduty.EventOrchestrationServiceSetRuleActionsAutomationActionParameterArgs{
Key: pulumi.String("channel"),
Value: pulumi.String("#my-team-channel"),
},
&pagerduty.EventOrchestrationServiceSetRuleActionsAutomationActionParameterArgs{
Key: pulumi.String("message"),
Value: pulumi.String("something is wrong with the canary deployment"),
},
},
Headers: pagerduty.EventOrchestrationServiceSetRuleActionsAutomationActionHeaderArray{
&pagerduty.EventOrchestrationServiceSetRuleActionsAutomationActionHeaderArgs{
Key: pulumi.String("X-Notification-Source"),
Value: pulumi.String("PagerDuty Incident Webhook"),
},
},
},
},
},
&pagerduty.EventOrchestrationServiceSetRuleArgs{
Label: pulumi.String("Never bother the on-call for info-level events outside of work hours"),
Conditions: pagerduty.EventOrchestrationServiceSetRuleConditionArray{
&pagerduty.EventOrchestrationServiceSetRuleConditionArgs{
Expression: pulumi.String("event.severity matches 'info' and not (now in Mon,Tue,Wed,Thu,Fri 09:00:00 to 17:00:00 America/Los_Angeles)"),
},
},
Actions: &pagerduty.EventOrchestrationServiceSetRuleActionsArgs{
Suppress: pulumi.Bool(true),
},
},
},
},
},
CatchAll: &pagerduty.EventOrchestrationServiceCatchAllArgs{
Actions: nil,
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Pagerduty = Pulumi.Pagerduty;
return await Deployment.RunAsync(() =>
{
var engineering = new Pagerduty.Team("engineering", new()
{
Name = "Engineering",
});
var example = new Pagerduty.User("example", new()
{
Name = "Earline Greenholt",
Email = "125.greenholt.earline@graham.name",
});
var foo = new Pagerduty.TeamMembership("foo", new()
{
UserId = example.Id,
TeamId = engineering.Id,
Role = "manager",
});
var exampleEscalationPolicy = new Pagerduty.EscalationPolicy("example", new()
{
Name = "Engineering Escalation Policy",
NumLoops = 2,
Rules = new[]
{
new Pagerduty.Inputs.EscalationPolicyRuleArgs
{
EscalationDelayInMinutes = 10,
Targets = new[]
{
new Pagerduty.Inputs.EscalationPolicyRuleTargetArgs
{
Type = "user_reference",
Id = example.Id,
},
},
},
},
});
var exampleService = new Pagerduty.Service("example", new()
{
Name = "My Web App",
AutoResolveTimeout = "14400",
AcknowledgementTimeout = "600",
EscalationPolicy = exampleEscalationPolicy.Id,
AlertCreation = "create_alerts_and_incidents",
});
var csImpact = new Pagerduty.IncidentCustomField("cs_impact", new()
{
Name = "impact",
DataType = "string",
FieldType = "single_value",
});
var p1 = Pagerduty.GetPriority.Invoke(new()
{
Name = "P1",
});
var sreEscPolicy = Pagerduty.GetEscalationPolicy.Invoke(new()
{
Name = "SRE Escalation Policy",
});
var www = new Pagerduty.EventOrchestrationService("www", new()
{
Service = exampleService.Id,
EnableEventOrchestrationForService = true,
Sets = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetArgs
{
Id = "start",
Rules = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleArgs
{
Label = "Always apply some consistent event transformations to all events",
Actions = new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsArgs
{
Variables = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsVariableArgs
{
Name = "hostname",
Path = "event.component",
Value = "hostname: (.*)",
Type = "regex",
},
},
Extractions = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsExtractionArgs
{
Template = "{{variables.hostname}}",
Target = "event.custom_details.hostname",
},
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsExtractionArgs
{
Source = "event.source",
Regex = "www (.*) service",
Target = "event.source",
},
},
RouteTo = "step-two",
},
},
},
},
new Pagerduty.Inputs.EventOrchestrationServiceSetArgs
{
Id = "step-two",
Rules = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleArgs
{
Label = "All critical alerts should be treated as P1 incident",
Conditions = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleConditionArgs
{
Expression = "event.severity matches 'critical'",
},
},
Actions = new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsArgs
{
Annotate = "Please use our P1 runbook: https://docs.test/p1-runbook",
Priority = p1.Apply(getPriorityResult => getPriorityResult.Id),
IncidentCustomFieldUpdates = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsIncidentCustomFieldUpdateArgs
{
Id = csImpact.Id,
Value = "High Impact",
},
},
},
},
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleArgs
{
Label = "If any of the API apps are unavailable, page the SRE team",
Conditions = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleConditionArgs
{
Expression = "event.custom_details.service_name matches part '-api' and event.custom_details.status_code matches '502'",
},
},
Actions = new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsArgs
{
EscalationPolicy = sreEscPolicy.Apply(getEscalationPolicyResult => getEscalationPolicyResult.Id),
},
},
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleArgs
{
Label = "If there's something wrong on the canary let the team know about it in our deployments Slack channel",
Conditions = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleConditionArgs
{
Expression = "event.custom_details.hostname matches part 'canary'",
},
},
Actions = new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsArgs
{
AutomationAction = new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsAutomationActionArgs
{
Name = "Canary Slack Notification",
Url = "https://our-slack-listerner.test/canary-notification",
AutoSend = true,
Parameters = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsAutomationActionParameterArgs
{
Key = "channel",
Value = "#my-team-channel",
},
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsAutomationActionParameterArgs
{
Key = "message",
Value = "something is wrong with the canary deployment",
},
},
Headers = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsAutomationActionHeaderArgs
{
Key = "X-Notification-Source",
Value = "PagerDuty Incident Webhook",
},
},
},
},
},
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleArgs
{
Label = "Never bother the on-call for info-level events outside of work hours",
Conditions = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleConditionArgs
{
Expression = "event.severity matches 'info' and not (now in Mon,Tue,Wed,Thu,Fri 09:00:00 to 17:00:00 America/Los_Angeles)",
},
},
Actions = new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsArgs
{
Suppress = true,
},
},
},
},
},
CatchAll = new Pagerduty.Inputs.EventOrchestrationServiceCatchAllArgs
{
Actions = null,
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.pagerduty.Team;
import com.pulumi.pagerduty.TeamArgs;
import com.pulumi.pagerduty.User;
import com.pulumi.pagerduty.UserArgs;
import com.pulumi.pagerduty.TeamMembership;
import com.pulumi.pagerduty.TeamMembershipArgs;
import com.pulumi.pagerduty.EscalationPolicy;
import com.pulumi.pagerduty.EscalationPolicyArgs;
import com.pulumi.pagerduty.inputs.EscalationPolicyRuleArgs;
import com.pulumi.pagerduty.Service;
import com.pulumi.pagerduty.ServiceArgs;
import com.pulumi.pagerduty.IncidentCustomField;
import com.pulumi.pagerduty.IncidentCustomFieldArgs;
import com.pulumi.pagerduty.PagerdutyFunctions;
import com.pulumi.pagerduty.inputs.GetPriorityArgs;
import com.pulumi.pagerduty.inputs.GetEscalationPolicyArgs;
import com.pulumi.pagerduty.EventOrchestrationService;
import com.pulumi.pagerduty.EventOrchestrationServiceArgs;
import com.pulumi.pagerduty.inputs.EventOrchestrationServiceSetArgs;
import com.pulumi.pagerduty.inputs.EventOrchestrationServiceCatchAllArgs;
import com.pulumi.pagerduty.inputs.EventOrchestrationServiceCatchAllActionsArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var engineering = new Team("engineering", TeamArgs.builder()
.name("Engineering")
.build());
var example = new User("example", UserArgs.builder()
.name("Earline Greenholt")
.email("125.greenholt.earline@graham.name")
.build());
var foo = new TeamMembership("foo", TeamMembershipArgs.builder()
.userId(example.id())
.teamId(engineering.id())
.role("manager")
.build());
var exampleEscalationPolicy = new EscalationPolicy("exampleEscalationPolicy", EscalationPolicyArgs.builder()
.name("Engineering Escalation Policy")
.numLoops(2)
.rules(EscalationPolicyRuleArgs.builder()
.escalationDelayInMinutes(10)
.targets(EscalationPolicyRuleTargetArgs.builder()
.type("user_reference")
.id(example.id())
.build())
.build())
.build());
var exampleService = new Service("exampleService", ServiceArgs.builder()
.name("My Web App")
.autoResolveTimeout(14400)
.acknowledgementTimeout(600)
.escalationPolicy(exampleEscalationPolicy.id())
.alertCreation("create_alerts_and_incidents")
.build());
var csImpact = new IncidentCustomField("csImpact", IncidentCustomFieldArgs.builder()
.name("impact")
.dataType("string")
.fieldType("single_value")
.build());
final var p1 = PagerdutyFunctions.getPriority(GetPriorityArgs.builder()
.name("P1")
.build());
final var sreEscPolicy = PagerdutyFunctions.getEscalationPolicy(GetEscalationPolicyArgs.builder()
.name("SRE Escalation Policy")
.build());
var www = new EventOrchestrationService("www", EventOrchestrationServiceArgs.builder()
.service(exampleService.id())
.enableEventOrchestrationForService(true)
.sets(
EventOrchestrationServiceSetArgs.builder()
.id("start")
.rules(EventOrchestrationServiceSetRuleArgs.builder()
.label("Always apply some consistent event transformations to all events")
.actions(EventOrchestrationServiceSetRuleActionsArgs.builder()
.variables(EventOrchestrationServiceSetRuleActionsVariableArgs.builder()
.name("hostname")
.path("event.component")
.value("hostname: (.*)")
.type("regex")
.build())
.extractions(
EventOrchestrationServiceSetRuleActionsExtractionArgs.builder()
.template("{{variables.hostname}}")
.target("event.custom_details.hostname")
.build(),
EventOrchestrationServiceSetRuleActionsExtractionArgs.builder()
.source("event.source")
.regex("www (.*) service")
.target("event.source")
.build())
.routeTo("step-two")
.build())
.build())
.build(),
EventOrchestrationServiceSetArgs.builder()
.id("step-two")
.rules(
EventOrchestrationServiceSetRuleArgs.builder()
.label("All critical alerts should be treated as P1 incident")
.conditions(EventOrchestrationServiceSetRuleConditionArgs.builder()
.expression("event.severity matches 'critical'")
.build())
.actions(EventOrchestrationServiceSetRuleActionsArgs.builder()
.annotate("Please use our P1 runbook: https://docs.test/p1-runbook")
.priority(p1.applyValue(getPriorityResult -> getPriorityResult.id()))
.incidentCustomFieldUpdates(EventOrchestrationServiceSetRuleActionsIncidentCustomFieldUpdateArgs.builder()
.id(csImpact.id())
.value("High Impact")
.build())
.build())
.build(),
EventOrchestrationServiceSetRuleArgs.builder()
.label("If any of the API apps are unavailable, page the SRE team")
.conditions(EventOrchestrationServiceSetRuleConditionArgs.builder()
.expression("event.custom_details.service_name matches part '-api' and event.custom_details.status_code matches '502'")
.build())
.actions(EventOrchestrationServiceSetRuleActionsArgs.builder()
.escalationPolicy(sreEscPolicy.applyValue(getEscalationPolicyResult -> getEscalationPolicyResult.id()))
.build())
.build(),
EventOrchestrationServiceSetRuleArgs.builder()
.label("If there's something wrong on the canary let the team know about it in our deployments Slack channel")
.conditions(EventOrchestrationServiceSetRuleConditionArgs.builder()
.expression("event.custom_details.hostname matches part 'canary'")
.build())
.actions(EventOrchestrationServiceSetRuleActionsArgs.builder()
.automationAction(EventOrchestrationServiceSetRuleActionsAutomationActionArgs.builder()
.name("Canary Slack Notification")
.url("https://our-slack-listerner.test/canary-notification")
.autoSend(true)
.parameters(
EventOrchestrationServiceSetRuleActionsAutomationActionParameterArgs.builder()
.key("channel")
.value("#my-team-channel")
.build(),
EventOrchestrationServiceSetRuleActionsAutomationActionParameterArgs.builder()
.key("message")
.value("something is wrong with the canary deployment")
.build())
.headers(EventOrchestrationServiceSetRuleActionsAutomationActionHeaderArgs.builder()
.key("X-Notification-Source")
.value("PagerDuty Incident Webhook")
.build())
.build())
.build())
.build(),
EventOrchestrationServiceSetRuleArgs.builder()
.label("Never bother the on-call for info-level events outside of work hours")
.conditions(EventOrchestrationServiceSetRuleConditionArgs.builder()
.expression("event.severity matches 'info' and not (now in Mon,Tue,Wed,Thu,Fri 09:00:00 to 17:00:00 America/Los_Angeles)")
.build())
.actions(EventOrchestrationServiceSetRuleActionsArgs.builder()
.suppress(true)
.build())
.build())
.build())
.catchAll(EventOrchestrationServiceCatchAllArgs.builder()
.actions()
.build())
.build());
}
}
resources:
engineering:
type: pagerduty:Team
properties:
name: Engineering
example:
type: pagerduty:User
properties:
name: Earline Greenholt
email: 125.greenholt.earline@graham.name
foo:
type: pagerduty:TeamMembership
properties:
userId: ${example.id}
teamId: ${engineering.id}
role: manager
exampleEscalationPolicy:
type: pagerduty:EscalationPolicy
name: example
properties:
name: Engineering Escalation Policy
numLoops: 2
rules:
- escalationDelayInMinutes: 10
targets:
- type: user_reference
id: ${example.id}
exampleService:
type: pagerduty:Service
name: example
properties:
name: My Web App
autoResolveTimeout: 14400
acknowledgementTimeout: 600
escalationPolicy: ${exampleEscalationPolicy.id}
alertCreation: create_alerts_and_incidents
csImpact:
type: pagerduty:IncidentCustomField
name: cs_impact
properties:
name: impact
dataType: string
fieldType: single_value
www:
type: pagerduty:EventOrchestrationService
properties:
service: ${exampleService.id}
enableEventOrchestrationForService: true
sets:
- id: start
rules:
- label: Always apply some consistent event transformations to all events
actions:
variables:
- name: hostname
path: event.component
value: 'hostname: (.*)'
type: regex
extractions:
- template: '{{variables.hostname}}'
target: event.custom_details.hostname
- source: event.source
regex: www (.*) service
target: event.source
routeTo: step-two
- id: step-two
rules:
- label: All critical alerts should be treated as P1 incident
conditions:
- expression: event.severity matches 'critical'
actions:
annotate: 'Please use our P1 runbook: https://docs.test/p1-runbook'
priority: ${p1.id}
incidentCustomFieldUpdates:
- id: ${csImpact.id}
value: High Impact
- label: If any of the API apps are unavailable, page the SRE team
conditions:
- expression: event.custom_details.service_name matches part '-api' and event.custom_details.status_code matches '502'
actions:
escalationPolicy: ${sreEscPolicy.id}
- label: If there's something wrong on the canary let the team know about it in our deployments Slack channel
conditions:
- expression: event.custom_details.hostname matches part 'canary'
actions:
automationAction:
name: Canary Slack Notification
url: https://our-slack-listerner.test/canary-notification
autoSend: true
parameters:
- key: channel
value: '#my-team-channel'
- key: message
value: something is wrong with the canary deployment
headers:
- key: X-Notification-Source
value: PagerDuty Incident Webhook
- label: Never bother the on-call for info-level events outside of work hours
conditions:
- expression: event.severity matches 'info' and not (now in Mon,Tue,Wed,Thu,Fri 09:00:00 to 17:00:00 America/Los_Angeles)
actions:
suppress: true
catchAll:
actions: {}
variables:
p1:
fn::invoke:
Function: pagerduty:getPriority
Arguments:
name: P1
sreEscPolicy:
fn::invoke:
Function: pagerduty:getEscalationPolicy
Arguments:
name: SRE Escalation Policy
Create EventOrchestrationService Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new EventOrchestrationService(name: string, args: EventOrchestrationServiceArgs, opts?: CustomResourceOptions);
@overload
def EventOrchestrationService(resource_name: str,
args: EventOrchestrationServiceArgs,
opts: Optional[ResourceOptions] = None)
@overload
def EventOrchestrationService(resource_name: str,
opts: Optional[ResourceOptions] = None,
catch_all: Optional[EventOrchestrationServiceCatchAllArgs] = None,
service: Optional[str] = None,
sets: Optional[Sequence[EventOrchestrationServiceSetArgs]] = None,
enable_event_orchestration_for_service: Optional[bool] = None)
func NewEventOrchestrationService(ctx *Context, name string, args EventOrchestrationServiceArgs, opts ...ResourceOption) (*EventOrchestrationService, error)
public EventOrchestrationService(string name, EventOrchestrationServiceArgs args, CustomResourceOptions? opts = null)
public EventOrchestrationService(String name, EventOrchestrationServiceArgs args)
public EventOrchestrationService(String name, EventOrchestrationServiceArgs args, CustomResourceOptions options)
type: pagerduty:EventOrchestrationService
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args EventOrchestrationServiceArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args EventOrchestrationServiceArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args EventOrchestrationServiceArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args EventOrchestrationServiceArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args EventOrchestrationServiceArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var eventOrchestrationServiceResource = new Pagerduty.EventOrchestrationService("eventOrchestrationServiceResource", new()
{
CatchAll = new Pagerduty.Inputs.EventOrchestrationServiceCatchAllArgs
{
Actions = new Pagerduty.Inputs.EventOrchestrationServiceCatchAllActionsArgs
{
Annotate = "string",
AutomationAction = new Pagerduty.Inputs.EventOrchestrationServiceCatchAllActionsAutomationActionArgs
{
Name = "string",
Url = "string",
AutoSend = false,
Headers = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceCatchAllActionsAutomationActionHeaderArgs
{
Key = "string",
Value = "string",
},
},
Parameters = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceCatchAllActionsAutomationActionParameterArgs
{
Key = "string",
Value = "string",
},
},
},
EscalationPolicy = "string",
EventAction = "string",
Extractions = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceCatchAllActionsExtractionArgs
{
Target = "string",
Regex = "string",
Source = "string",
Template = "string",
},
},
IncidentCustomFieldUpdates = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceCatchAllActionsIncidentCustomFieldUpdateArgs
{
Id = "string",
Value = "string",
},
},
PagerdutyAutomationAction = new Pagerduty.Inputs.EventOrchestrationServiceCatchAllActionsPagerdutyAutomationActionArgs
{
ActionId = "string",
},
Priority = "string",
RouteTo = "string",
Severity = "string",
Suppress = false,
Suspend = 0,
Variables = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceCatchAllActionsVariableArgs
{
Name = "string",
Path = "string",
Type = "string",
Value = "string",
},
},
},
},
Service = "string",
Sets = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetArgs
{
Id = "string",
Rules = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleArgs
{
Actions = new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsArgs
{
Annotate = "string",
AutomationAction = new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsAutomationActionArgs
{
Name = "string",
Url = "string",
AutoSend = false,
Headers = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsAutomationActionHeaderArgs
{
Key = "string",
Value = "string",
},
},
Parameters = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsAutomationActionParameterArgs
{
Key = "string",
Value = "string",
},
},
},
EscalationPolicy = "string",
EventAction = "string",
Extractions = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsExtractionArgs
{
Target = "string",
Regex = "string",
Source = "string",
Template = "string",
},
},
IncidentCustomFieldUpdates = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsIncidentCustomFieldUpdateArgs
{
Id = "string",
Value = "string",
},
},
PagerdutyAutomationAction = new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsPagerdutyAutomationActionArgs
{
ActionId = "string",
},
Priority = "string",
RouteTo = "string",
Severity = "string",
Suppress = false,
Suspend = 0,
Variables = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleActionsVariableArgs
{
Name = "string",
Path = "string",
Type = "string",
Value = "string",
},
},
},
Conditions = new[]
{
new Pagerduty.Inputs.EventOrchestrationServiceSetRuleConditionArgs
{
Expression = "string",
},
},
Disabled = false,
Id = "string",
Label = "string",
},
},
},
},
EnableEventOrchestrationForService = false,
});
example, err := pagerduty.NewEventOrchestrationService(ctx, "eventOrchestrationServiceResource", &pagerduty.EventOrchestrationServiceArgs{
CatchAll: &pagerduty.EventOrchestrationServiceCatchAllArgs{
Actions: &pagerduty.EventOrchestrationServiceCatchAllActionsArgs{
Annotate: pulumi.String("string"),
AutomationAction: &pagerduty.EventOrchestrationServiceCatchAllActionsAutomationActionArgs{
Name: pulumi.String("string"),
Url: pulumi.String("string"),
AutoSend: pulumi.Bool(false),
Headers: pagerduty.EventOrchestrationServiceCatchAllActionsAutomationActionHeaderArray{
&pagerduty.EventOrchestrationServiceCatchAllActionsAutomationActionHeaderArgs{
Key: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
Parameters: pagerduty.EventOrchestrationServiceCatchAllActionsAutomationActionParameterArray{
&pagerduty.EventOrchestrationServiceCatchAllActionsAutomationActionParameterArgs{
Key: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
},
EscalationPolicy: pulumi.String("string"),
EventAction: pulumi.String("string"),
Extractions: pagerduty.EventOrchestrationServiceCatchAllActionsExtractionArray{
&pagerduty.EventOrchestrationServiceCatchAllActionsExtractionArgs{
Target: pulumi.String("string"),
Regex: pulumi.String("string"),
Source: pulumi.String("string"),
Template: pulumi.String("string"),
},
},
IncidentCustomFieldUpdates: pagerduty.EventOrchestrationServiceCatchAllActionsIncidentCustomFieldUpdateArray{
&pagerduty.EventOrchestrationServiceCatchAllActionsIncidentCustomFieldUpdateArgs{
Id: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
PagerdutyAutomationAction: &pagerduty.EventOrchestrationServiceCatchAllActionsPagerdutyAutomationActionArgs{
ActionId: pulumi.String("string"),
},
Priority: pulumi.String("string"),
RouteTo: pulumi.String("string"),
Severity: pulumi.String("string"),
Suppress: pulumi.Bool(false),
Suspend: pulumi.Int(0),
Variables: pagerduty.EventOrchestrationServiceCatchAllActionsVariableArray{
&pagerduty.EventOrchestrationServiceCatchAllActionsVariableArgs{
Name: pulumi.String("string"),
Path: pulumi.String("string"),
Type: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
},
},
Service: pulumi.String("string"),
Sets: pagerduty.EventOrchestrationServiceSetArray{
&pagerduty.EventOrchestrationServiceSetArgs{
Id: pulumi.String("string"),
Rules: pagerduty.EventOrchestrationServiceSetRuleArray{
&pagerduty.EventOrchestrationServiceSetRuleArgs{
Actions: &pagerduty.EventOrchestrationServiceSetRuleActionsArgs{
Annotate: pulumi.String("string"),
AutomationAction: &pagerduty.EventOrchestrationServiceSetRuleActionsAutomationActionArgs{
Name: pulumi.String("string"),
Url: pulumi.String("string"),
AutoSend: pulumi.Bool(false),
Headers: pagerduty.EventOrchestrationServiceSetRuleActionsAutomationActionHeaderArray{
&pagerduty.EventOrchestrationServiceSetRuleActionsAutomationActionHeaderArgs{
Key: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
Parameters: pagerduty.EventOrchestrationServiceSetRuleActionsAutomationActionParameterArray{
&pagerduty.EventOrchestrationServiceSetRuleActionsAutomationActionParameterArgs{
Key: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
},
EscalationPolicy: pulumi.String("string"),
EventAction: pulumi.String("string"),
Extractions: pagerduty.EventOrchestrationServiceSetRuleActionsExtractionArray{
&pagerduty.EventOrchestrationServiceSetRuleActionsExtractionArgs{
Target: pulumi.String("string"),
Regex: pulumi.String("string"),
Source: pulumi.String("string"),
Template: pulumi.String("string"),
},
},
IncidentCustomFieldUpdates: pagerduty.EventOrchestrationServiceSetRuleActionsIncidentCustomFieldUpdateArray{
&pagerduty.EventOrchestrationServiceSetRuleActionsIncidentCustomFieldUpdateArgs{
Id: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
PagerdutyAutomationAction: &pagerduty.EventOrchestrationServiceSetRuleActionsPagerdutyAutomationActionArgs{
ActionId: pulumi.String("string"),
},
Priority: pulumi.String("string"),
RouteTo: pulumi.String("string"),
Severity: pulumi.String("string"),
Suppress: pulumi.Bool(false),
Suspend: pulumi.Int(0),
Variables: pagerduty.EventOrchestrationServiceSetRuleActionsVariableArray{
&pagerduty.EventOrchestrationServiceSetRuleActionsVariableArgs{
Name: pulumi.String("string"),
Path: pulumi.String("string"),
Type: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
},
Conditions: pagerduty.EventOrchestrationServiceSetRuleConditionArray{
&pagerduty.EventOrchestrationServiceSetRuleConditionArgs{
Expression: pulumi.String("string"),
},
},
Disabled: pulumi.Bool(false),
Id: pulumi.String("string"),
Label: pulumi.String("string"),
},
},
},
},
EnableEventOrchestrationForService: pulumi.Bool(false),
})
var eventOrchestrationServiceResource = new EventOrchestrationService("eventOrchestrationServiceResource", EventOrchestrationServiceArgs.builder()
.catchAll(EventOrchestrationServiceCatchAllArgs.builder()
.actions(EventOrchestrationServiceCatchAllActionsArgs.builder()
.annotate("string")
.automationAction(EventOrchestrationServiceCatchAllActionsAutomationActionArgs.builder()
.name("string")
.url("string")
.autoSend(false)
.headers(EventOrchestrationServiceCatchAllActionsAutomationActionHeaderArgs.builder()
.key("string")
.value("string")
.build())
.parameters(EventOrchestrationServiceCatchAllActionsAutomationActionParameterArgs.builder()
.key("string")
.value("string")
.build())
.build())
.escalationPolicy("string")
.eventAction("string")
.extractions(EventOrchestrationServiceCatchAllActionsExtractionArgs.builder()
.target("string")
.regex("string")
.source("string")
.template("string")
.build())
.incidentCustomFieldUpdates(EventOrchestrationServiceCatchAllActionsIncidentCustomFieldUpdateArgs.builder()
.id("string")
.value("string")
.build())
.pagerdutyAutomationAction(EventOrchestrationServiceCatchAllActionsPagerdutyAutomationActionArgs.builder()
.actionId("string")
.build())
.priority("string")
.routeTo("string")
.severity("string")
.suppress(false)
.suspend(0)
.variables(EventOrchestrationServiceCatchAllActionsVariableArgs.builder()
.name("string")
.path("string")
.type("string")
.value("string")
.build())
.build())
.build())
.service("string")
.sets(EventOrchestrationServiceSetArgs.builder()
.id("string")
.rules(EventOrchestrationServiceSetRuleArgs.builder()
.actions(EventOrchestrationServiceSetRuleActionsArgs.builder()
.annotate("string")
.automationAction(EventOrchestrationServiceSetRuleActionsAutomationActionArgs.builder()
.name("string")
.url("string")
.autoSend(false)
.headers(EventOrchestrationServiceSetRuleActionsAutomationActionHeaderArgs.builder()
.key("string")
.value("string")
.build())
.parameters(EventOrchestrationServiceSetRuleActionsAutomationActionParameterArgs.builder()
.key("string")
.value("string")
.build())
.build())
.escalationPolicy("string")
.eventAction("string")
.extractions(EventOrchestrationServiceSetRuleActionsExtractionArgs.builder()
.target("string")
.regex("string")
.source("string")
.template("string")
.build())
.incidentCustomFieldUpdates(EventOrchestrationServiceSetRuleActionsIncidentCustomFieldUpdateArgs.builder()
.id("string")
.value("string")
.build())
.pagerdutyAutomationAction(EventOrchestrationServiceSetRuleActionsPagerdutyAutomationActionArgs.builder()
.actionId("string")
.build())
.priority("string")
.routeTo("string")
.severity("string")
.suppress(false)
.suspend(0)
.variables(EventOrchestrationServiceSetRuleActionsVariableArgs.builder()
.name("string")
.path("string")
.type("string")
.value("string")
.build())
.build())
.conditions(EventOrchestrationServiceSetRuleConditionArgs.builder()
.expression("string")
.build())
.disabled(false)
.id("string")
.label("string")
.build())
.build())
.enableEventOrchestrationForService(false)
.build());
event_orchestration_service_resource = pagerduty.EventOrchestrationService("eventOrchestrationServiceResource",
catch_all=pagerduty.EventOrchestrationServiceCatchAllArgs(
actions=pagerduty.EventOrchestrationServiceCatchAllActionsArgs(
annotate="string",
automation_action=pagerduty.EventOrchestrationServiceCatchAllActionsAutomationActionArgs(
name="string",
url="string",
auto_send=False,
headers=[pagerduty.EventOrchestrationServiceCatchAllActionsAutomationActionHeaderArgs(
key="string",
value="string",
)],
parameters=[pagerduty.EventOrchestrationServiceCatchAllActionsAutomationActionParameterArgs(
key="string",
value="string",
)],
),
escalation_policy="string",
event_action="string",
extractions=[pagerduty.EventOrchestrationServiceCatchAllActionsExtractionArgs(
target="string",
regex="string",
source="string",
template="string",
)],
incident_custom_field_updates=[pagerduty.EventOrchestrationServiceCatchAllActionsIncidentCustomFieldUpdateArgs(
id="string",
value="string",
)],
pagerduty_automation_action=pagerduty.EventOrchestrationServiceCatchAllActionsPagerdutyAutomationActionArgs(
action_id="string",
),
priority="string",
route_to="string",
severity="string",
suppress=False,
suspend=0,
variables=[pagerduty.EventOrchestrationServiceCatchAllActionsVariableArgs(
name="string",
path="string",
type="string",
value="string",
)],
),
),
service="string",
sets=[pagerduty.EventOrchestrationServiceSetArgs(
id="string",
rules=[pagerduty.EventOrchestrationServiceSetRuleArgs(
actions=pagerduty.EventOrchestrationServiceSetRuleActionsArgs(
annotate="string",
automation_action=pagerduty.EventOrchestrationServiceSetRuleActionsAutomationActionArgs(
name="string",
url="string",
auto_send=False,
headers=[pagerduty.EventOrchestrationServiceSetRuleActionsAutomationActionHeaderArgs(
key="string",
value="string",
)],
parameters=[pagerduty.EventOrchestrationServiceSetRuleActionsAutomationActionParameterArgs(
key="string",
value="string",
)],
),
escalation_policy="string",
event_action="string",
extractions=[pagerduty.EventOrchestrationServiceSetRuleActionsExtractionArgs(
target="string",
regex="string",
source="string",
template="string",
)],
incident_custom_field_updates=[pagerduty.EventOrchestrationServiceSetRuleActionsIncidentCustomFieldUpdateArgs(
id="string",
value="string",
)],
pagerduty_automation_action=pagerduty.EventOrchestrationServiceSetRuleActionsPagerdutyAutomationActionArgs(
action_id="string",
),
priority="string",
route_to="string",
severity="string",
suppress=False,
suspend=0,
variables=[pagerduty.EventOrchestrationServiceSetRuleActionsVariableArgs(
name="string",
path="string",
type="string",
value="string",
)],
),
conditions=[pagerduty.EventOrchestrationServiceSetRuleConditionArgs(
expression="string",
)],
disabled=False,
id="string",
label="string",
)],
)],
enable_event_orchestration_for_service=False)
const eventOrchestrationServiceResource = new pagerduty.EventOrchestrationService("eventOrchestrationServiceResource", {
catchAll: {
actions: {
annotate: "string",
automationAction: {
name: "string",
url: "string",
autoSend: false,
headers: [{
key: "string",
value: "string",
}],
parameters: [{
key: "string",
value: "string",
}],
},
escalationPolicy: "string",
eventAction: "string",
extractions: [{
target: "string",
regex: "string",
source: "string",
template: "string",
}],
incidentCustomFieldUpdates: [{
id: "string",
value: "string",
}],
pagerdutyAutomationAction: {
actionId: "string",
},
priority: "string",
routeTo: "string",
severity: "string",
suppress: false,
suspend: 0,
variables: [{
name: "string",
path: "string",
type: "string",
value: "string",
}],
},
},
service: "string",
sets: [{
id: "string",
rules: [{
actions: {
annotate: "string",
automationAction: {
name: "string",
url: "string",
autoSend: false,
headers: [{
key: "string",
value: "string",
}],
parameters: [{
key: "string",
value: "string",
}],
},
escalationPolicy: "string",
eventAction: "string",
extractions: [{
target: "string",
regex: "string",
source: "string",
template: "string",
}],
incidentCustomFieldUpdates: [{
id: "string",
value: "string",
}],
pagerdutyAutomationAction: {
actionId: "string",
},
priority: "string",
routeTo: "string",
severity: "string",
suppress: false,
suspend: 0,
variables: [{
name: "string",
path: "string",
type: "string",
value: "string",
}],
},
conditions: [{
expression: "string",
}],
disabled: false,
id: "string",
label: "string",
}],
}],
enableEventOrchestrationForService: false,
});
type: pagerduty:EventOrchestrationService
properties:
catchAll:
actions:
annotate: string
automationAction:
autoSend: false
headers:
- key: string
value: string
name: string
parameters:
- key: string
value: string
url: string
escalationPolicy: string
eventAction: string
extractions:
- regex: string
source: string
target: string
template: string
incidentCustomFieldUpdates:
- id: string
value: string
pagerdutyAutomationAction:
actionId: string
priority: string
routeTo: string
severity: string
suppress: false
suspend: 0
variables:
- name: string
path: string
type: string
value: string
enableEventOrchestrationForService: false
service: string
sets:
- id: string
rules:
- actions:
annotate: string
automationAction:
autoSend: false
headers:
- key: string
value: string
name: string
parameters:
- key: string
value: string
url: string
escalationPolicy: string
eventAction: string
extractions:
- regex: string
source: string
target: string
template: string
incidentCustomFieldUpdates:
- id: string
value: string
pagerdutyAutomationAction:
actionId: string
priority: string
routeTo: string
severity: string
suppress: false
suspend: 0
variables:
- name: string
path: string
type: string
value: string
conditions:
- expression: string
disabled: false
id: string
label: string
EventOrchestrationService Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The EventOrchestrationService resource accepts the following input properties:
- Catch
All EventOrchestration Service Catch All - the
catch_all
actions will be applied if an Event reaches the end of any set without matching any rules in that set. - Service string
- ID of the Service to which this Service Orchestration belongs to.
- Sets
List<Event
Orchestration Service Set> - A Service Orchestration must contain at least a "start" set, but can contain any number of additional sets that are routed to by other rules to form a directional graph.
- Enable
Event boolOrchestration For Service - Opt-in/out for switching the Service to Service Orchestrations.
- Catch
All EventOrchestration Service Catch All Args - the
catch_all
actions will be applied if an Event reaches the end of any set without matching any rules in that set. - Service string
- ID of the Service to which this Service Orchestration belongs to.
- Sets
[]Event
Orchestration Service Set Args - A Service Orchestration must contain at least a "start" set, but can contain any number of additional sets that are routed to by other rules to form a directional graph.
- Enable
Event boolOrchestration For Service - Opt-in/out for switching the Service to Service Orchestrations.
- catch
All EventOrchestration Service Catch All - the
catch_all
actions will be applied if an Event reaches the end of any set without matching any rules in that set. - service String
- ID of the Service to which this Service Orchestration belongs to.
- sets
List<Event
Orchestration Service Set> - A Service Orchestration must contain at least a "start" set, but can contain any number of additional sets that are routed to by other rules to form a directional graph.
- enable
Event BooleanOrchestration For Service - Opt-in/out for switching the Service to Service Orchestrations.
- catch
All EventOrchestration Service Catch All - the
catch_all
actions will be applied if an Event reaches the end of any set without matching any rules in that set. - service string
- ID of the Service to which this Service Orchestration belongs to.
- sets
Event
Orchestration Service Set[] - A Service Orchestration must contain at least a "start" set, but can contain any number of additional sets that are routed to by other rules to form a directional graph.
- enable
Event booleanOrchestration For Service - Opt-in/out for switching the Service to Service Orchestrations.
- catch_
all EventOrchestration Service Catch All Args - the
catch_all
actions will be applied if an Event reaches the end of any set without matching any rules in that set. - service str
- ID of the Service to which this Service Orchestration belongs to.
- sets
Sequence[Event
Orchestration Service Set Args] - A Service Orchestration must contain at least a "start" set, but can contain any number of additional sets that are routed to by other rules to form a directional graph.
- enable_
event_ boolorchestration_ for_ service - Opt-in/out for switching the Service to Service Orchestrations.
- catch
All Property Map - the
catch_all
actions will be applied if an Event reaches the end of any set without matching any rules in that set. - service String
- ID of the Service to which this Service Orchestration belongs to.
- sets List<Property Map>
- A Service Orchestration must contain at least a "start" set, but can contain any number of additional sets that are routed to by other rules to form a directional graph.
- enable
Event BooleanOrchestration For Service - Opt-in/out for switching the Service to Service Orchestrations.
Outputs
All input properties are implicitly available as output properties. Additionally, the EventOrchestrationService resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing EventOrchestrationService Resource
Get an existing EventOrchestrationService resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: EventOrchestrationServiceState, opts?: CustomResourceOptions): EventOrchestrationService
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
catch_all: Optional[EventOrchestrationServiceCatchAllArgs] = None,
enable_event_orchestration_for_service: Optional[bool] = None,
service: Optional[str] = None,
sets: Optional[Sequence[EventOrchestrationServiceSetArgs]] = None) -> EventOrchestrationService
func GetEventOrchestrationService(ctx *Context, name string, id IDInput, state *EventOrchestrationServiceState, opts ...ResourceOption) (*EventOrchestrationService, error)
public static EventOrchestrationService Get(string name, Input<string> id, EventOrchestrationServiceState? state, CustomResourceOptions? opts = null)
public static EventOrchestrationService get(String name, Output<String> id, EventOrchestrationServiceState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Catch
All EventOrchestration Service Catch All - the
catch_all
actions will be applied if an Event reaches the end of any set without matching any rules in that set. - Enable
Event boolOrchestration For Service - Opt-in/out for switching the Service to Service Orchestrations.
- Service string
- ID of the Service to which this Service Orchestration belongs to.
- Sets
List<Event
Orchestration Service Set> - A Service Orchestration must contain at least a "start" set, but can contain any number of additional sets that are routed to by other rules to form a directional graph.
- Catch
All EventOrchestration Service Catch All Args - the
catch_all
actions will be applied if an Event reaches the end of any set without matching any rules in that set. - Enable
Event boolOrchestration For Service - Opt-in/out for switching the Service to Service Orchestrations.
- Service string
- ID of the Service to which this Service Orchestration belongs to.
- Sets
[]Event
Orchestration Service Set Args - A Service Orchestration must contain at least a "start" set, but can contain any number of additional sets that are routed to by other rules to form a directional graph.
- catch
All EventOrchestration Service Catch All - the
catch_all
actions will be applied if an Event reaches the end of any set without matching any rules in that set. - enable
Event BooleanOrchestration For Service - Opt-in/out for switching the Service to Service Orchestrations.
- service String
- ID of the Service to which this Service Orchestration belongs to.
- sets
List<Event
Orchestration Service Set> - A Service Orchestration must contain at least a "start" set, but can contain any number of additional sets that are routed to by other rules to form a directional graph.
- catch
All EventOrchestration Service Catch All - the
catch_all
actions will be applied if an Event reaches the end of any set without matching any rules in that set. - enable
Event booleanOrchestration For Service - Opt-in/out for switching the Service to Service Orchestrations.
- service string
- ID of the Service to which this Service Orchestration belongs to.
- sets
Event
Orchestration Service Set[] - A Service Orchestration must contain at least a "start" set, but can contain any number of additional sets that are routed to by other rules to form a directional graph.
- catch_
all EventOrchestration Service Catch All Args - the
catch_all
actions will be applied if an Event reaches the end of any set without matching any rules in that set. - enable_
event_ boolorchestration_ for_ service - Opt-in/out for switching the Service to Service Orchestrations.
- service str
- ID of the Service to which this Service Orchestration belongs to.
- sets
Sequence[Event
Orchestration Service Set Args] - A Service Orchestration must contain at least a "start" set, but can contain any number of additional sets that are routed to by other rules to form a directional graph.
- catch
All Property Map - the
catch_all
actions will be applied if an Event reaches the end of any set without matching any rules in that set. - enable
Event BooleanOrchestration For Service - Opt-in/out for switching the Service to Service Orchestrations.
- service String
- ID of the Service to which this Service Orchestration belongs to.
- sets List<Property Map>
- A Service Orchestration must contain at least a "start" set, but can contain any number of additional sets that are routed to by other rules to form a directional graph.
Supporting Types
EventOrchestrationServiceCatchAll, EventOrchestrationServiceCatchAllArgs
- Actions
Event
Orchestration Service Catch All Actions - These are the actions that will be taken to change the resulting alert and incident.
catch_all
supports all actions described above forrule
exceptroute_to
action.
- Actions
Event
Orchestration Service Catch All Actions - These are the actions that will be taken to change the resulting alert and incident.
catch_all
supports all actions described above forrule
exceptroute_to
action.
- actions
Event
Orchestration Service Catch All Actions - These are the actions that will be taken to change the resulting alert and incident.
catch_all
supports all actions described above forrule
exceptroute_to
action.
- actions
Event
Orchestration Service Catch All Actions - These are the actions that will be taken to change the resulting alert and incident.
catch_all
supports all actions described above forrule
exceptroute_to
action.
- actions
Event
Orchestration Service Catch All Actions - These are the actions that will be taken to change the resulting alert and incident.
catch_all
supports all actions described above forrule
exceptroute_to
action.
- actions Property Map
- These are the actions that will be taken to change the resulting alert and incident.
catch_all
supports all actions described above forrule
exceptroute_to
action.
EventOrchestrationServiceCatchAllActions, EventOrchestrationServiceCatchAllActionsArgs
- Annotate string
- Add this text as a note on the resulting incident.
- Automation
Action EventOrchestration Service Catch All Actions Automation Action - Create a Webhook associated with the resulting incident.
- Escalation
Policy string - The ID of the Escalation Policy you want to assign incidents to. Event rules with this action will override the Escalation Policy already set on a Service's settings, with what is configured by this action.
- Event
Action string - sets whether the resulting alert status is trigger or resolve. Allowed values are:
trigger
,resolve
- Extractions
List<Event
Orchestration Service Catch All Actions Extraction> - Replace any CEF field or Custom Details object field using custom variables.
- Incident
Custom List<EventField Updates Orchestration Service Catch All Actions Incident Custom Field Update> - Assign a custom field to the resulting incident.
- Pagerduty
Automation EventAction Orchestration Service Catch All Actions Pagerduty Automation Action - Configure a Process Automation associated with the resulting incident.
- Priority string
- The ID of the priority you want to set on resulting incident. Consider using the
pagerduty.getPriority
data source. - Route
To string - The ID of a Set from this Service Orchestration whose rules you also want to use with events that match this rule.
- Severity string
- sets Severity of the resulting alert. Allowed values are:
info
,error
,warning
,critical
- Suppress bool
- Set whether the resulting alert is suppressed. Suppressed alerts will not trigger an incident.
- Suspend int
- The number of seconds to suspend the resulting alert before triggering. This effectively pauses incident notifications. If a
resolve
event arrives before the alert triggers then PagerDuty won't create an incident for this alert. - Variables
List<Event
Orchestration Service Catch All Actions Variable> - Populate variables from event payloads and use those variables in other event actions.
- Annotate string
- Add this text as a note on the resulting incident.
- Automation
Action EventOrchestration Service Catch All Actions Automation Action - Create a Webhook associated with the resulting incident.
- Escalation
Policy string - The ID of the Escalation Policy you want to assign incidents to. Event rules with this action will override the Escalation Policy already set on a Service's settings, with what is configured by this action.
- Event
Action string - sets whether the resulting alert status is trigger or resolve. Allowed values are:
trigger
,resolve
- Extractions
[]Event
Orchestration Service Catch All Actions Extraction - Replace any CEF field or Custom Details object field using custom variables.
- Incident
Custom []EventField Updates Orchestration Service Catch All Actions Incident Custom Field Update - Assign a custom field to the resulting incident.
- Pagerduty
Automation EventAction Orchestration Service Catch All Actions Pagerduty Automation Action - Configure a Process Automation associated with the resulting incident.
- Priority string
- The ID of the priority you want to set on resulting incident. Consider using the
pagerduty.getPriority
data source. - Route
To string - The ID of a Set from this Service Orchestration whose rules you also want to use with events that match this rule.
- Severity string
- sets Severity of the resulting alert. Allowed values are:
info
,error
,warning
,critical
- Suppress bool
- Set whether the resulting alert is suppressed. Suppressed alerts will not trigger an incident.
- Suspend int
- The number of seconds to suspend the resulting alert before triggering. This effectively pauses incident notifications. If a
resolve
event arrives before the alert triggers then PagerDuty won't create an incident for this alert. - Variables
[]Event
Orchestration Service Catch All Actions Variable - Populate variables from event payloads and use those variables in other event actions.
- annotate String
- Add this text as a note on the resulting incident.
- automation
Action EventOrchestration Service Catch All Actions Automation Action - Create a Webhook associated with the resulting incident.
- escalation
Policy String - The ID of the Escalation Policy you want to assign incidents to. Event rules with this action will override the Escalation Policy already set on a Service's settings, with what is configured by this action.
- event
Action String - sets whether the resulting alert status is trigger or resolve. Allowed values are:
trigger
,resolve
- extractions
List<Event
Orchestration Service Catch All Actions Extraction> - Replace any CEF field or Custom Details object field using custom variables.
- incident
Custom List<EventField Updates Orchestration Service Catch All Actions Incident Custom Field Update> - Assign a custom field to the resulting incident.
- pagerduty
Automation EventAction Orchestration Service Catch All Actions Pagerduty Automation Action - Configure a Process Automation associated with the resulting incident.
- priority String
- The ID of the priority you want to set on resulting incident. Consider using the
pagerduty.getPriority
data source. - route
To String - The ID of a Set from this Service Orchestration whose rules you also want to use with events that match this rule.
- severity String
- sets Severity of the resulting alert. Allowed values are:
info
,error
,warning
,critical
- suppress Boolean
- Set whether the resulting alert is suppressed. Suppressed alerts will not trigger an incident.
- suspend Integer
- The number of seconds to suspend the resulting alert before triggering. This effectively pauses incident notifications. If a
resolve
event arrives before the alert triggers then PagerDuty won't create an incident for this alert. - variables
List<Event
Orchestration Service Catch All Actions Variable> - Populate variables from event payloads and use those variables in other event actions.
- annotate string
- Add this text as a note on the resulting incident.
- automation
Action EventOrchestration Service Catch All Actions Automation Action - Create a Webhook associated with the resulting incident.
- escalation
Policy string - The ID of the Escalation Policy you want to assign incidents to. Event rules with this action will override the Escalation Policy already set on a Service's settings, with what is configured by this action.
- event
Action string - sets whether the resulting alert status is trigger or resolve. Allowed values are:
trigger
,resolve
- extractions
Event
Orchestration Service Catch All Actions Extraction[] - Replace any CEF field or Custom Details object field using custom variables.
- incident
Custom EventField Updates Orchestration Service Catch All Actions Incident Custom Field Update[] - Assign a custom field to the resulting incident.
- pagerduty
Automation EventAction Orchestration Service Catch All Actions Pagerduty Automation Action - Configure a Process Automation associated with the resulting incident.
- priority string
- The ID of the priority you want to set on resulting incident. Consider using the
pagerduty.getPriority
data source. - route
To string - The ID of a Set from this Service Orchestration whose rules you also want to use with events that match this rule.
- severity string
- sets Severity of the resulting alert. Allowed values are:
info
,error
,warning
,critical
- suppress boolean
- Set whether the resulting alert is suppressed. Suppressed alerts will not trigger an incident.
- suspend number
- The number of seconds to suspend the resulting alert before triggering. This effectively pauses incident notifications. If a
resolve
event arrives before the alert triggers then PagerDuty won't create an incident for this alert. - variables
Event
Orchestration Service Catch All Actions Variable[] - Populate variables from event payloads and use those variables in other event actions.
- annotate str
- Add this text as a note on the resulting incident.
- automation_
action EventOrchestration Service Catch All Actions Automation Action - Create a Webhook associated with the resulting incident.
- escalation_
policy str - The ID of the Escalation Policy you want to assign incidents to. Event rules with this action will override the Escalation Policy already set on a Service's settings, with what is configured by this action.
- event_
action str - sets whether the resulting alert status is trigger or resolve. Allowed values are:
trigger
,resolve
- extractions
Sequence[Event
Orchestration Service Catch All Actions Extraction] - Replace any CEF field or Custom Details object field using custom variables.
- incident_
custom_ Sequence[Eventfield_ updates Orchestration Service Catch All Actions Incident Custom Field Update] - Assign a custom field to the resulting incident.
- pagerduty_
automation_ Eventaction Orchestration Service Catch All Actions Pagerduty Automation Action - Configure a Process Automation associated with the resulting incident.
- priority str
- The ID of the priority you want to set on resulting incident. Consider using the
pagerduty.getPriority
data source. - route_
to str - The ID of a Set from this Service Orchestration whose rules you also want to use with events that match this rule.
- severity str
- sets Severity of the resulting alert. Allowed values are:
info
,error
,warning
,critical
- suppress bool
- Set whether the resulting alert is suppressed. Suppressed alerts will not trigger an incident.
- suspend int
- The number of seconds to suspend the resulting alert before triggering. This effectively pauses incident notifications. If a
resolve
event arrives before the alert triggers then PagerDuty won't create an incident for this alert. - variables
Sequence[Event
Orchestration Service Catch All Actions Variable] - Populate variables from event payloads and use those variables in other event actions.
- annotate String
- Add this text as a note on the resulting incident.
- automation
Action Property Map - Create a Webhook associated with the resulting incident.
- escalation
Policy String - The ID of the Escalation Policy you want to assign incidents to. Event rules with this action will override the Escalation Policy already set on a Service's settings, with what is configured by this action.
- event
Action String - sets whether the resulting alert status is trigger or resolve. Allowed values are:
trigger
,resolve
- extractions List<Property Map>
- Replace any CEF field or Custom Details object field using custom variables.
- incident
Custom List<Property Map>Field Updates - Assign a custom field to the resulting incident.
- pagerduty
Automation Property MapAction - Configure a Process Automation associated with the resulting incident.
- priority String
- The ID of the priority you want to set on resulting incident. Consider using the
pagerduty.getPriority
data source. - route
To String - The ID of a Set from this Service Orchestration whose rules you also want to use with events that match this rule.
- severity String
- sets Severity of the resulting alert. Allowed values are:
info
,error
,warning
,critical
- suppress Boolean
- Set whether the resulting alert is suppressed. Suppressed alerts will not trigger an incident.
- suspend Number
- The number of seconds to suspend the resulting alert before triggering. This effectively pauses incident notifications. If a
resolve
event arrives before the alert triggers then PagerDuty won't create an incident for this alert. - variables List<Property Map>
- Populate variables from event payloads and use those variables in other event actions.
EventOrchestrationServiceCatchAllActionsAutomationAction, EventOrchestrationServiceCatchAllActionsAutomationActionArgs
- Name string
- Name of this Webhook.
- Url string
- The API endpoint where PagerDuty's servers will send the webhook request.
- Auto
Send bool - When true, PagerDuty's servers will automatically send this webhook request as soon as the resulting incident is created. When false, your incident responder will be able to manually trigger the Webhook via the PagerDuty website and mobile app.
- Headers
List<Event
Orchestration Service Catch All Actions Automation Action Header> - Specify custom key/value pairs that'll be sent with the webhook request as request headers.
- Parameters
List<Event
Orchestration Service Catch All Actions Automation Action Parameter> - Specify custom key/value pairs that'll be included in the webhook request's JSON payload.
- Name string
- Name of this Webhook.
- Url string
- The API endpoint where PagerDuty's servers will send the webhook request.
- Auto
Send bool - When true, PagerDuty's servers will automatically send this webhook request as soon as the resulting incident is created. When false, your incident responder will be able to manually trigger the Webhook via the PagerDuty website and mobile app.
- Headers
[]Event
Orchestration Service Catch All Actions Automation Action Header - Specify custom key/value pairs that'll be sent with the webhook request as request headers.
- Parameters
[]Event
Orchestration Service Catch All Actions Automation Action Parameter - Specify custom key/value pairs that'll be included in the webhook request's JSON payload.
- name String
- Name of this Webhook.
- url String
- The API endpoint where PagerDuty's servers will send the webhook request.
- auto
Send Boolean - When true, PagerDuty's servers will automatically send this webhook request as soon as the resulting incident is created. When false, your incident responder will be able to manually trigger the Webhook via the PagerDuty website and mobile app.
- headers
List<Event
Orchestration Service Catch All Actions Automation Action Header> - Specify custom key/value pairs that'll be sent with the webhook request as request headers.
- parameters
List<Event
Orchestration Service Catch All Actions Automation Action Parameter> - Specify custom key/value pairs that'll be included in the webhook request's JSON payload.
- name string
- Name of this Webhook.
- url string
- The API endpoint where PagerDuty's servers will send the webhook request.
- auto
Send boolean - When true, PagerDuty's servers will automatically send this webhook request as soon as the resulting incident is created. When false, your incident responder will be able to manually trigger the Webhook via the PagerDuty website and mobile app.
- headers
Event
Orchestration Service Catch All Actions Automation Action Header[] - Specify custom key/value pairs that'll be sent with the webhook request as request headers.
- parameters
Event
Orchestration Service Catch All Actions Automation Action Parameter[] - Specify custom key/value pairs that'll be included in the webhook request's JSON payload.
- name str
- Name of this Webhook.
- url str
- The API endpoint where PagerDuty's servers will send the webhook request.
- auto_
send bool - When true, PagerDuty's servers will automatically send this webhook request as soon as the resulting incident is created. When false, your incident responder will be able to manually trigger the Webhook via the PagerDuty website and mobile app.
- headers
Sequence[Event
Orchestration Service Catch All Actions Automation Action Header] - Specify custom key/value pairs that'll be sent with the webhook request as request headers.
- parameters
Sequence[Event
Orchestration Service Catch All Actions Automation Action Parameter] - Specify custom key/value pairs that'll be included in the webhook request's JSON payload.
- name String
- Name of this Webhook.
- url String
- The API endpoint where PagerDuty's servers will send the webhook request.
- auto
Send Boolean - When true, PagerDuty's servers will automatically send this webhook request as soon as the resulting incident is created. When false, your incident responder will be able to manually trigger the Webhook via the PagerDuty website and mobile app.
- headers List<Property Map>
- Specify custom key/value pairs that'll be sent with the webhook request as request headers.
- parameters List<Property Map>
- Specify custom key/value pairs that'll be included in the webhook request's JSON payload.
EventOrchestrationServiceCatchAllActionsAutomationActionHeader, EventOrchestrationServiceCatchAllActionsAutomationActionHeaderArgs
EventOrchestrationServiceCatchAllActionsAutomationActionParameter, EventOrchestrationServiceCatchAllActionsAutomationActionParameterArgs
EventOrchestrationServiceCatchAllActionsExtraction, EventOrchestrationServiceCatchAllActionsExtractionArgs
- Target string
- The PagerDuty Common Event Format PD-CEF field that will be set with the value from the
template
or based onregex
andsource
fields. - Regex string
- A RE2 regular expression that will be matched against field specified via the
source
argument. If the regex contains one or more capture groups, their values will be extracted and appended together. If it contains no capture groups, the whole match is used. This field can be ignored fortemplate
based extractions. - Source string
- The path to the event field where the
regex
will be applied to extract a value. You can use any valid PCL path likeevent.summary
and you can reference previously-defined variables using a path likevariables.hostname
. This field can be ignored fortemplate
based extractions. - Template string
- A string that will be used to populate the
target
field. You can reference variables or event data within your template using double curly braces. For example:- Use variables named
ip
andsubnet
with a template like:{{variables.ip}}/{{variables.subnet}}
- Combine the event severity & summary with template like:
{{event.severity}}:{{event.summary}}
- Use variables named
- Target string
- The PagerDuty Common Event Format PD-CEF field that will be set with the value from the
template
or based onregex
andsource
fields. - Regex string
- A RE2 regular expression that will be matched against field specified via the
source
argument. If the regex contains one or more capture groups, their values will be extracted and appended together. If it contains no capture groups, the whole match is used. This field can be ignored fortemplate
based extractions. - Source string
- The path to the event field where the
regex
will be applied to extract a value. You can use any valid PCL path likeevent.summary
and you can reference previously-defined variables using a path likevariables.hostname
. This field can be ignored fortemplate
based extractions. - Template string
- A string that will be used to populate the
target
field. You can reference variables or event data within your template using double curly braces. For example:- Use variables named
ip
andsubnet
with a template like:{{variables.ip}}/{{variables.subnet}}
- Combine the event severity & summary with template like:
{{event.severity}}:{{event.summary}}
- Use variables named
- target String
- The PagerDuty Common Event Format PD-CEF field that will be set with the value from the
template
or based onregex
andsource
fields. - regex String
- A RE2 regular expression that will be matched against field specified via the
source
argument. If the regex contains one or more capture groups, their values will be extracted and appended together. If it contains no capture groups, the whole match is used. This field can be ignored fortemplate
based extractions. - source String
- The path to the event field where the
regex
will be applied to extract a value. You can use any valid PCL path likeevent.summary
and you can reference previously-defined variables using a path likevariables.hostname
. This field can be ignored fortemplate
based extractions. - template String
- A string that will be used to populate the
target
field. You can reference variables or event data within your template using double curly braces. For example:- Use variables named
ip
andsubnet
with a template like:{{variables.ip}}/{{variables.subnet}}
- Combine the event severity & summary with template like:
{{event.severity}}:{{event.summary}}
- Use variables named
- target string
- The PagerDuty Common Event Format PD-CEF field that will be set with the value from the
template
or based onregex
andsource
fields. - regex string
- A RE2 regular expression that will be matched against field specified via the
source
argument. If the regex contains one or more capture groups, their values will be extracted and appended together. If it contains no capture groups, the whole match is used. This field can be ignored fortemplate
based extractions. - source string
- The path to the event field where the
regex
will be applied to extract a value. You can use any valid PCL path likeevent.summary
and you can reference previously-defined variables using a path likevariables.hostname
. This field can be ignored fortemplate
based extractions. - template string
- A string that will be used to populate the
target
field. You can reference variables or event data within your template using double curly braces. For example:- Use variables named
ip
andsubnet
with a template like:{{variables.ip}}/{{variables.subnet}}
- Combine the event severity & summary with template like:
{{event.severity}}:{{event.summary}}
- Use variables named
- target str
- The PagerDuty Common Event Format PD-CEF field that will be set with the value from the
template
or based onregex
andsource
fields. - regex str
- A RE2 regular expression that will be matched against field specified via the
source
argument. If the regex contains one or more capture groups, their values will be extracted and appended together. If it contains no capture groups, the whole match is used. This field can be ignored fortemplate
based extractions. - source str
- The path to the event field where the
regex
will be applied to extract a value. You can use any valid PCL path likeevent.summary
and you can reference previously-defined variables using a path likevariables.hostname
. This field can be ignored fortemplate
based extractions. - template str
- A string that will be used to populate the
target
field. You can reference variables or event data within your template using double curly braces. For example:- Use variables named
ip
andsubnet
with a template like:{{variables.ip}}/{{variables.subnet}}
- Combine the event severity & summary with template like:
{{event.severity}}:{{event.summary}}
- Use variables named
- target String
- The PagerDuty Common Event Format PD-CEF field that will be set with the value from the
template
or based onregex
andsource
fields. - regex String
- A RE2 regular expression that will be matched against field specified via the
source
argument. If the regex contains one or more capture groups, their values will be extracted and appended together. If it contains no capture groups, the whole match is used. This field can be ignored fortemplate
based extractions. - source String
- The path to the event field where the
regex
will be applied to extract a value. You can use any valid PCL path likeevent.summary
and you can reference previously-defined variables using a path likevariables.hostname
. This field can be ignored fortemplate
based extractions. - template String
- A string that will be used to populate the
target
field. You can reference variables or event data within your template using double curly braces. For example:- Use variables named
ip
andsubnet
with a template like:{{variables.ip}}/{{variables.subnet}}
- Combine the event severity & summary with template like:
{{event.severity}}:{{event.summary}}
- Use variables named
EventOrchestrationServiceCatchAllActionsIncidentCustomFieldUpdate, EventOrchestrationServiceCatchAllActionsIncidentCustomFieldUpdateArgs
EventOrchestrationServiceCatchAllActionsPagerdutyAutomationAction, EventOrchestrationServiceCatchAllActionsPagerdutyAutomationActionArgs
- Action
Id string - Id of the Process Automation action to be triggered.
- Action
Id string - Id of the Process Automation action to be triggered.
- action
Id String - Id of the Process Automation action to be triggered.
- action
Id string - Id of the Process Automation action to be triggered.
- action_
id str - Id of the Process Automation action to be triggered.
- action
Id String - Id of the Process Automation action to be triggered.
EventOrchestrationServiceCatchAllActionsVariable, EventOrchestrationServiceCatchAllActionsVariableArgs
- Name string
- The name of the variable
- Path string
- Path to a field in an event, in dot-notation. This supports both PagerDuty Common Event Format PD-CEF and non-CEF fields. Eg: Use
event.summary
for thesummary
CEF field. Useraw_event.fieldname
to read from the original eventfieldname
data. You can use any valid PCL path. - Type string
- Only
regex
is supported - Value string
- The Regex expression to match against. Must use valid RE2 regular expression syntax.
- Name string
- The name of the variable
- Path string
- Path to a field in an event, in dot-notation. This supports both PagerDuty Common Event Format PD-CEF and non-CEF fields. Eg: Use
event.summary
for thesummary
CEF field. Useraw_event.fieldname
to read from the original eventfieldname
data. You can use any valid PCL path. - Type string
- Only
regex
is supported - Value string
- The Regex expression to match against. Must use valid RE2 regular expression syntax.
- name String
- The name of the variable
- path String
- Path to a field in an event, in dot-notation. This supports both PagerDuty Common Event Format PD-CEF and non-CEF fields. Eg: Use
event.summary
for thesummary
CEF field. Useraw_event.fieldname
to read from the original eventfieldname
data. You can use any valid PCL path. - type String
- Only
regex
is supported - value String
- The Regex expression to match against. Must use valid RE2 regular expression syntax.
- name string
- The name of the variable
- path string
- Path to a field in an event, in dot-notation. This supports both PagerDuty Common Event Format PD-CEF and non-CEF fields. Eg: Use
event.summary
for thesummary
CEF field. Useraw_event.fieldname
to read from the original eventfieldname
data. You can use any valid PCL path. - type string
- Only
regex
is supported - value string
- The Regex expression to match against. Must use valid RE2 regular expression syntax.
- name str
- The name of the variable
- path str
- Path to a field in an event, in dot-notation. This supports both PagerDuty Common Event Format PD-CEF and non-CEF fields. Eg: Use
event.summary
for thesummary
CEF field. Useraw_event.fieldname
to read from the original eventfieldname
data. You can use any valid PCL path. - type str
- Only
regex
is supported - value str
- The Regex expression to match against. Must use valid RE2 regular expression syntax.
- name String
- The name of the variable
- path String
- Path to a field in an event, in dot-notation. This supports both PagerDuty Common Event Format PD-CEF and non-CEF fields. Eg: Use
event.summary
for thesummary
CEF field. Useraw_event.fieldname
to read from the original eventfieldname
data. You can use any valid PCL path. - type String
- Only
regex
is supported - value String
- The Regex expression to match against. Must use valid RE2 regular expression syntax.
EventOrchestrationServiceSet, EventOrchestrationServiceSetArgs
- Id string
- The ID of this set of rules. Rules in other sets can route events into this set using the rule's
route_to
property. - Rules
List<Event
Orchestration Service Set Rule>
- Id string
- The ID of this set of rules. Rules in other sets can route events into this set using the rule's
route_to
property. - Rules
[]Event
Orchestration Service Set Rule
- id String
- The ID of this set of rules. Rules in other sets can route events into this set using the rule's
route_to
property. - rules
List<Event
Orchestration Service Set Rule>
- id string
- The ID of this set of rules. Rules in other sets can route events into this set using the rule's
route_to
property. - rules
Event
Orchestration Service Set Rule[]
- id str
- The ID of this set of rules. Rules in other sets can route events into this set using the rule's
route_to
property. - rules
Sequence[Event
Orchestration Service Set Rule]
- id String
- The ID of this set of rules. Rules in other sets can route events into this set using the rule's
route_to
property. - rules List<Property Map>
EventOrchestrationServiceSetRule, EventOrchestrationServiceSetRuleArgs
- Actions
Event
Orchestration Service Set Rule Actions - Actions that will be taken to change the resulting alert and incident, when an event matches this rule.
- Conditions
List<Event
Orchestration Service Set Rule Condition> - Each of these conditions is evaluated to check if an event matches this rule. The rule is considered a match if any of these conditions match. If none are provided, the event will
always
match against the rule. - Disabled bool
- Indicates whether the rule is disabled and would therefore not be evaluated.
- Id string
- The ID of the rule within the set.
- Label string
- A description of this rule's purpose.
- Actions
Event
Orchestration Service Set Rule Actions - Actions that will be taken to change the resulting alert and incident, when an event matches this rule.
- Conditions
[]Event
Orchestration Service Set Rule Condition - Each of these conditions is evaluated to check if an event matches this rule. The rule is considered a match if any of these conditions match. If none are provided, the event will
always
match against the rule. - Disabled bool
- Indicates whether the rule is disabled and would therefore not be evaluated.
- Id string
- The ID of the rule within the set.
- Label string
- A description of this rule's purpose.
- actions
Event
Orchestration Service Set Rule Actions - Actions that will be taken to change the resulting alert and incident, when an event matches this rule.
- conditions
List<Event
Orchestration Service Set Rule Condition> - Each of these conditions is evaluated to check if an event matches this rule. The rule is considered a match if any of these conditions match. If none are provided, the event will
always
match against the rule. - disabled Boolean
- Indicates whether the rule is disabled and would therefore not be evaluated.
- id String
- The ID of the rule within the set.
- label String
- A description of this rule's purpose.
- actions
Event
Orchestration Service Set Rule Actions - Actions that will be taken to change the resulting alert and incident, when an event matches this rule.
- conditions
Event
Orchestration Service Set Rule Condition[] - Each of these conditions is evaluated to check if an event matches this rule. The rule is considered a match if any of these conditions match. If none are provided, the event will
always
match against the rule. - disabled boolean
- Indicates whether the rule is disabled and would therefore not be evaluated.
- id string
- The ID of the rule within the set.
- label string
- A description of this rule's purpose.
- actions
Event
Orchestration Service Set Rule Actions - Actions that will be taken to change the resulting alert and incident, when an event matches this rule.
- conditions
Sequence[Event
Orchestration Service Set Rule Condition] - Each of these conditions is evaluated to check if an event matches this rule. The rule is considered a match if any of these conditions match. If none are provided, the event will
always
match against the rule. - disabled bool
- Indicates whether the rule is disabled and would therefore not be evaluated.
- id str
- The ID of the rule within the set.
- label str
- A description of this rule's purpose.
- actions Property Map
- Actions that will be taken to change the resulting alert and incident, when an event matches this rule.
- conditions List<Property Map>
- Each of these conditions is evaluated to check if an event matches this rule. The rule is considered a match if any of these conditions match. If none are provided, the event will
always
match against the rule. - disabled Boolean
- Indicates whether the rule is disabled and would therefore not be evaluated.
- id String
- The ID of the rule within the set.
- label String
- A description of this rule's purpose.
EventOrchestrationServiceSetRuleActions, EventOrchestrationServiceSetRuleActionsArgs
- Annotate string
- Add this text as a note on the resulting incident.
- Automation
Action EventOrchestration Service Set Rule Actions Automation Action - Create a Webhook associated with the resulting incident.
- Escalation
Policy string - The ID of the Escalation Policy you want to assign incidents to. Event rules with this action will override the Escalation Policy already set on a Service's settings, with what is configured by this action.
- Event
Action string - sets whether the resulting alert status is trigger or resolve. Allowed values are:
trigger
,resolve
- Extractions
List<Event
Orchestration Service Set Rule Actions Extraction> - Replace any CEF field or Custom Details object field using custom variables.
- Incident
Custom List<EventField Updates Orchestration Service Set Rule Actions Incident Custom Field Update> - Assign a custom field to the resulting incident.
- Pagerduty
Automation EventAction Orchestration Service Set Rule Actions Pagerduty Automation Action - Configure a Process Automation associated with the resulting incident.
- Priority string
- The ID of the priority you want to set on resulting incident. Consider using the
pagerduty.getPriority
data source. - Route
To string - The ID of a Set from this Service Orchestration whose rules you also want to use with events that match this rule.
- Severity string
- sets Severity of the resulting alert. Allowed values are:
info
,error
,warning
,critical
- Suppress bool
- Set whether the resulting alert is suppressed. Suppressed alerts will not trigger an incident.
- Suspend int
- The number of seconds to suspend the resulting alert before triggering. This effectively pauses incident notifications. If a
resolve
event arrives before the alert triggers then PagerDuty won't create an incident for this alert. - Variables
List<Event
Orchestration Service Set Rule Actions Variable> - Populate variables from event payloads and use those variables in other event actions.
- Annotate string
- Add this text as a note on the resulting incident.
- Automation
Action EventOrchestration Service Set Rule Actions Automation Action - Create a Webhook associated with the resulting incident.
- Escalation
Policy string - The ID of the Escalation Policy you want to assign incidents to. Event rules with this action will override the Escalation Policy already set on a Service's settings, with what is configured by this action.
- Event
Action string - sets whether the resulting alert status is trigger or resolve. Allowed values are:
trigger
,resolve
- Extractions
[]Event
Orchestration Service Set Rule Actions Extraction - Replace any CEF field or Custom Details object field using custom variables.
- Incident
Custom []EventField Updates Orchestration Service Set Rule Actions Incident Custom Field Update - Assign a custom field to the resulting incident.
- Pagerduty
Automation EventAction Orchestration Service Set Rule Actions Pagerduty Automation Action - Configure a Process Automation associated with the resulting incident.
- Priority string
- The ID of the priority you want to set on resulting incident. Consider using the
pagerduty.getPriority
data source. - Route
To string - The ID of a Set from this Service Orchestration whose rules you also want to use with events that match this rule.
- Severity string
- sets Severity of the resulting alert. Allowed values are:
info
,error
,warning
,critical
- Suppress bool
- Set whether the resulting alert is suppressed. Suppressed alerts will not trigger an incident.
- Suspend int
- The number of seconds to suspend the resulting alert before triggering. This effectively pauses incident notifications. If a
resolve
event arrives before the alert triggers then PagerDuty won't create an incident for this alert. - Variables
[]Event
Orchestration Service Set Rule Actions Variable - Populate variables from event payloads and use those variables in other event actions.
- annotate String
- Add this text as a note on the resulting incident.
- automation
Action EventOrchestration Service Set Rule Actions Automation Action - Create a Webhook associated with the resulting incident.
- escalation
Policy String - The ID of the Escalation Policy you want to assign incidents to. Event rules with this action will override the Escalation Policy already set on a Service's settings, with what is configured by this action.
- event
Action String - sets whether the resulting alert status is trigger or resolve. Allowed values are:
trigger
,resolve
- extractions
List<Event
Orchestration Service Set Rule Actions Extraction> - Replace any CEF field or Custom Details object field using custom variables.
- incident
Custom List<EventField Updates Orchestration Service Set Rule Actions Incident Custom Field Update> - Assign a custom field to the resulting incident.
- pagerduty
Automation EventAction Orchestration Service Set Rule Actions Pagerduty Automation Action - Configure a Process Automation associated with the resulting incident.
- priority String
- The ID of the priority you want to set on resulting incident. Consider using the
pagerduty.getPriority
data source. - route
To String - The ID of a Set from this Service Orchestration whose rules you also want to use with events that match this rule.
- severity String
- sets Severity of the resulting alert. Allowed values are:
info
,error
,warning
,critical
- suppress Boolean
- Set whether the resulting alert is suppressed. Suppressed alerts will not trigger an incident.
- suspend Integer
- The number of seconds to suspend the resulting alert before triggering. This effectively pauses incident notifications. If a
resolve
event arrives before the alert triggers then PagerDuty won't create an incident for this alert. - variables
List<Event
Orchestration Service Set Rule Actions Variable> - Populate variables from event payloads and use those variables in other event actions.
- annotate string
- Add this text as a note on the resulting incident.
- automation
Action EventOrchestration Service Set Rule Actions Automation Action - Create a Webhook associated with the resulting incident.
- escalation
Policy string - The ID of the Escalation Policy you want to assign incidents to. Event rules with this action will override the Escalation Policy already set on a Service's settings, with what is configured by this action.
- event
Action string - sets whether the resulting alert status is trigger or resolve. Allowed values are:
trigger
,resolve
- extractions
Event
Orchestration Service Set Rule Actions Extraction[] - Replace any CEF field or Custom Details object field using custom variables.
- incident
Custom EventField Updates Orchestration Service Set Rule Actions Incident Custom Field Update[] - Assign a custom field to the resulting incident.
- pagerduty
Automation EventAction Orchestration Service Set Rule Actions Pagerduty Automation Action - Configure a Process Automation associated with the resulting incident.
- priority string
- The ID of the priority you want to set on resulting incident. Consider using the
pagerduty.getPriority
data source. - route
To string - The ID of a Set from this Service Orchestration whose rules you also want to use with events that match this rule.
- severity string
- sets Severity of the resulting alert. Allowed values are:
info
,error
,warning
,critical
- suppress boolean
- Set whether the resulting alert is suppressed. Suppressed alerts will not trigger an incident.
- suspend number
- The number of seconds to suspend the resulting alert before triggering. This effectively pauses incident notifications. If a
resolve
event arrives before the alert triggers then PagerDuty won't create an incident for this alert. - variables
Event
Orchestration Service Set Rule Actions Variable[] - Populate variables from event payloads and use those variables in other event actions.
- annotate str
- Add this text as a note on the resulting incident.
- automation_
action EventOrchestration Service Set Rule Actions Automation Action - Create a Webhook associated with the resulting incident.
- escalation_
policy str - The ID of the Escalation Policy you want to assign incidents to. Event rules with this action will override the Escalation Policy already set on a Service's settings, with what is configured by this action.
- event_
action str - sets whether the resulting alert status is trigger or resolve. Allowed values are:
trigger
,resolve
- extractions
Sequence[Event
Orchestration Service Set Rule Actions Extraction] - Replace any CEF field or Custom Details object field using custom variables.
- incident_
custom_ Sequence[Eventfield_ updates Orchestration Service Set Rule Actions Incident Custom Field Update] - Assign a custom field to the resulting incident.
- pagerduty_
automation_ Eventaction Orchestration Service Set Rule Actions Pagerduty Automation Action - Configure a Process Automation associated with the resulting incident.
- priority str
- The ID of the priority you want to set on resulting incident. Consider using the
pagerduty.getPriority
data source. - route_
to str - The ID of a Set from this Service Orchestration whose rules you also want to use with events that match this rule.
- severity str
- sets Severity of the resulting alert. Allowed values are:
info
,error
,warning
,critical
- suppress bool
- Set whether the resulting alert is suppressed. Suppressed alerts will not trigger an incident.
- suspend int
- The number of seconds to suspend the resulting alert before triggering. This effectively pauses incident notifications. If a
resolve
event arrives before the alert triggers then PagerDuty won't create an incident for this alert. - variables
Sequence[Event
Orchestration Service Set Rule Actions Variable] - Populate variables from event payloads and use those variables in other event actions.
- annotate String
- Add this text as a note on the resulting incident.
- automation
Action Property Map - Create a Webhook associated with the resulting incident.
- escalation
Policy String - The ID of the Escalation Policy you want to assign incidents to. Event rules with this action will override the Escalation Policy already set on a Service's settings, with what is configured by this action.
- event
Action String - sets whether the resulting alert status is trigger or resolve. Allowed values are:
trigger
,resolve
- extractions List<Property Map>
- Replace any CEF field or Custom Details object field using custom variables.
- incident
Custom List<Property Map>Field Updates - Assign a custom field to the resulting incident.
- pagerduty
Automation Property MapAction - Configure a Process Automation associated with the resulting incident.
- priority String
- The ID of the priority you want to set on resulting incident. Consider using the
pagerduty.getPriority
data source. - route
To String - The ID of a Set from this Service Orchestration whose rules you also want to use with events that match this rule.
- severity String
- sets Severity of the resulting alert. Allowed values are:
info
,error
,warning
,critical
- suppress Boolean
- Set whether the resulting alert is suppressed. Suppressed alerts will not trigger an incident.
- suspend Number
- The number of seconds to suspend the resulting alert before triggering. This effectively pauses incident notifications. If a
resolve
event arrives before the alert triggers then PagerDuty won't create an incident for this alert. - variables List<Property Map>
- Populate variables from event payloads and use those variables in other event actions.
EventOrchestrationServiceSetRuleActionsAutomationAction, EventOrchestrationServiceSetRuleActionsAutomationActionArgs
- Name string
- Name of this Webhook.
- Url string
- The API endpoint where PagerDuty's servers will send the webhook request.
- Auto
Send bool - When true, PagerDuty's servers will automatically send this webhook request as soon as the resulting incident is created. When false, your incident responder will be able to manually trigger the Webhook via the PagerDuty website and mobile app.
- Headers
List<Event
Orchestration Service Set Rule Actions Automation Action Header> - Specify custom key/value pairs that'll be sent with the webhook request as request headers.
- Parameters
List<Event
Orchestration Service Set Rule Actions Automation Action Parameter> - Specify custom key/value pairs that'll be included in the webhook request's JSON payload.
- Name string
- Name of this Webhook.
- Url string
- The API endpoint where PagerDuty's servers will send the webhook request.
- Auto
Send bool - When true, PagerDuty's servers will automatically send this webhook request as soon as the resulting incident is created. When false, your incident responder will be able to manually trigger the Webhook via the PagerDuty website and mobile app.
- Headers
[]Event
Orchestration Service Set Rule Actions Automation Action Header - Specify custom key/value pairs that'll be sent with the webhook request as request headers.
- Parameters
[]Event
Orchestration Service Set Rule Actions Automation Action Parameter - Specify custom key/value pairs that'll be included in the webhook request's JSON payload.
- name String
- Name of this Webhook.
- url String
- The API endpoint where PagerDuty's servers will send the webhook request.
- auto
Send Boolean - When true, PagerDuty's servers will automatically send this webhook request as soon as the resulting incident is created. When false, your incident responder will be able to manually trigger the Webhook via the PagerDuty website and mobile app.
- headers
List<Event
Orchestration Service Set Rule Actions Automation Action Header> - Specify custom key/value pairs that'll be sent with the webhook request as request headers.
- parameters
List<Event
Orchestration Service Set Rule Actions Automation Action Parameter> - Specify custom key/value pairs that'll be included in the webhook request's JSON payload.
- name string
- Name of this Webhook.
- url string
- The API endpoint where PagerDuty's servers will send the webhook request.
- auto
Send boolean - When true, PagerDuty's servers will automatically send this webhook request as soon as the resulting incident is created. When false, your incident responder will be able to manually trigger the Webhook via the PagerDuty website and mobile app.
- headers
Event
Orchestration Service Set Rule Actions Automation Action Header[] - Specify custom key/value pairs that'll be sent with the webhook request as request headers.
- parameters
Event
Orchestration Service Set Rule Actions Automation Action Parameter[] - Specify custom key/value pairs that'll be included in the webhook request's JSON payload.
- name str
- Name of this Webhook.
- url str
- The API endpoint where PagerDuty's servers will send the webhook request.
- auto_
send bool - When true, PagerDuty's servers will automatically send this webhook request as soon as the resulting incident is created. When false, your incident responder will be able to manually trigger the Webhook via the PagerDuty website and mobile app.
- headers
Sequence[Event
Orchestration Service Set Rule Actions Automation Action Header] - Specify custom key/value pairs that'll be sent with the webhook request as request headers.
- parameters
Sequence[Event
Orchestration Service Set Rule Actions Automation Action Parameter] - Specify custom key/value pairs that'll be included in the webhook request's JSON payload.
- name String
- Name of this Webhook.
- url String
- The API endpoint where PagerDuty's servers will send the webhook request.
- auto
Send Boolean - When true, PagerDuty's servers will automatically send this webhook request as soon as the resulting incident is created. When false, your incident responder will be able to manually trigger the Webhook via the PagerDuty website and mobile app.
- headers List<Property Map>
- Specify custom key/value pairs that'll be sent with the webhook request as request headers.
- parameters List<Property Map>
- Specify custom key/value pairs that'll be included in the webhook request's JSON payload.
EventOrchestrationServiceSetRuleActionsAutomationActionHeader, EventOrchestrationServiceSetRuleActionsAutomationActionHeaderArgs
EventOrchestrationServiceSetRuleActionsAutomationActionParameter, EventOrchestrationServiceSetRuleActionsAutomationActionParameterArgs
EventOrchestrationServiceSetRuleActionsExtraction, EventOrchestrationServiceSetRuleActionsExtractionArgs
- Target string
- The PagerDuty Common Event Format PD-CEF field that will be set with the value from the
template
or based onregex
andsource
fields. - Regex string
- A RE2 regular expression that will be matched against field specified via the
source
argument. If the regex contains one or more capture groups, their values will be extracted and appended together. If it contains no capture groups, the whole match is used. This field can be ignored fortemplate
based extractions. - Source string
- The path to the event field where the
regex
will be applied to extract a value. You can use any valid PCL path likeevent.summary
and you can reference previously-defined variables using a path likevariables.hostname
. This field can be ignored fortemplate
based extractions. - Template string
- A string that will be used to populate the
target
field. You can reference variables or event data within your template using double curly braces. For example:- Use variables named
ip
andsubnet
with a template like:{{variables.ip}}/{{variables.subnet}}
- Combine the event severity & summary with template like:
{{event.severity}}:{{event.summary}}
- Use variables named
- Target string
- The PagerDuty Common Event Format PD-CEF field that will be set with the value from the
template
or based onregex
andsource
fields. - Regex string
- A RE2 regular expression that will be matched against field specified via the
source
argument. If the regex contains one or more capture groups, their values will be extracted and appended together. If it contains no capture groups, the whole match is used. This field can be ignored fortemplate
based extractions. - Source string
- The path to the event field where the
regex
will be applied to extract a value. You can use any valid PCL path likeevent.summary
and you can reference previously-defined variables using a path likevariables.hostname
. This field can be ignored fortemplate
based extractions. - Template string
- A string that will be used to populate the
target
field. You can reference variables or event data within your template using double curly braces. For example:- Use variables named
ip
andsubnet
with a template like:{{variables.ip}}/{{variables.subnet}}
- Combine the event severity & summary with template like:
{{event.severity}}:{{event.summary}}
- Use variables named
- target String
- The PagerDuty Common Event Format PD-CEF field that will be set with the value from the
template
or based onregex
andsource
fields. - regex String
- A RE2 regular expression that will be matched against field specified via the
source
argument. If the regex contains one or more capture groups, their values will be extracted and appended together. If it contains no capture groups, the whole match is used. This field can be ignored fortemplate
based extractions. - source String
- The path to the event field where the
regex
will be applied to extract a value. You can use any valid PCL path likeevent.summary
and you can reference previously-defined variables using a path likevariables.hostname
. This field can be ignored fortemplate
based extractions. - template String
- A string that will be used to populate the
target
field. You can reference variables or event data within your template using double curly braces. For example:- Use variables named
ip
andsubnet
with a template like:{{variables.ip}}/{{variables.subnet}}
- Combine the event severity & summary with template like:
{{event.severity}}:{{event.summary}}
- Use variables named
- target string
- The PagerDuty Common Event Format PD-CEF field that will be set with the value from the
template
or based onregex
andsource
fields. - regex string
- A RE2 regular expression that will be matched against field specified via the
source
argument. If the regex contains one or more capture groups, their values will be extracted and appended together. If it contains no capture groups, the whole match is used. This field can be ignored fortemplate
based extractions. - source string
- The path to the event field where the
regex
will be applied to extract a value. You can use any valid PCL path likeevent.summary
and you can reference previously-defined variables using a path likevariables.hostname
. This field can be ignored fortemplate
based extractions. - template string
- A string that will be used to populate the
target
field. You can reference variables or event data within your template using double curly braces. For example:- Use variables named
ip
andsubnet
with a template like:{{variables.ip}}/{{variables.subnet}}
- Combine the event severity & summary with template like:
{{event.severity}}:{{event.summary}}
- Use variables named
- target str
- The PagerDuty Common Event Format PD-CEF field that will be set with the value from the
template
or based onregex
andsource
fields. - regex str
- A RE2 regular expression that will be matched against field specified via the
source
argument. If the regex contains one or more capture groups, their values will be extracted and appended together. If it contains no capture groups, the whole match is used. This field can be ignored fortemplate
based extractions. - source str
- The path to the event field where the
regex
will be applied to extract a value. You can use any valid PCL path likeevent.summary
and you can reference previously-defined variables using a path likevariables.hostname
. This field can be ignored fortemplate
based extractions. - template str
- A string that will be used to populate the
target
field. You can reference variables or event data within your template using double curly braces. For example:- Use variables named
ip
andsubnet
with a template like:{{variables.ip}}/{{variables.subnet}}
- Combine the event severity & summary with template like:
{{event.severity}}:{{event.summary}}
- Use variables named
- target String
- The PagerDuty Common Event Format PD-CEF field that will be set with the value from the
template
or based onregex
andsource
fields. - regex String
- A RE2 regular expression that will be matched against field specified via the
source
argument. If the regex contains one or more capture groups, their values will be extracted and appended together. If it contains no capture groups, the whole match is used. This field can be ignored fortemplate
based extractions. - source String
- The path to the event field where the
regex
will be applied to extract a value. You can use any valid PCL path likeevent.summary
and you can reference previously-defined variables using a path likevariables.hostname
. This field can be ignored fortemplate
based extractions. - template String
- A string that will be used to populate the
target
field. You can reference variables or event data within your template using double curly braces. For example:- Use variables named
ip
andsubnet
with a template like:{{variables.ip}}/{{variables.subnet}}
- Combine the event severity & summary with template like:
{{event.severity}}:{{event.summary}}
- Use variables named
EventOrchestrationServiceSetRuleActionsIncidentCustomFieldUpdate, EventOrchestrationServiceSetRuleActionsIncidentCustomFieldUpdateArgs
EventOrchestrationServiceSetRuleActionsPagerdutyAutomationAction, EventOrchestrationServiceSetRuleActionsPagerdutyAutomationActionArgs
- Action
Id string - Id of the Process Automation action to be triggered.
- Action
Id string - Id of the Process Automation action to be triggered.
- action
Id String - Id of the Process Automation action to be triggered.
- action
Id string - Id of the Process Automation action to be triggered.
- action_
id str - Id of the Process Automation action to be triggered.
- action
Id String - Id of the Process Automation action to be triggered.
EventOrchestrationServiceSetRuleActionsVariable, EventOrchestrationServiceSetRuleActionsVariableArgs
- Name string
- The name of the variable
- Path string
- Path to a field in an event, in dot-notation. This supports both PagerDuty Common Event Format PD-CEF and non-CEF fields. Eg: Use
event.summary
for thesummary
CEF field. Useraw_event.fieldname
to read from the original eventfieldname
data. You can use any valid PCL path. - Type string
- Only
regex
is supported - Value string
- The Regex expression to match against. Must use valid RE2 regular expression syntax.
- Name string
- The name of the variable
- Path string
- Path to a field in an event, in dot-notation. This supports both PagerDuty Common Event Format PD-CEF and non-CEF fields. Eg: Use
event.summary
for thesummary
CEF field. Useraw_event.fieldname
to read from the original eventfieldname
data. You can use any valid PCL path. - Type string
- Only
regex
is supported - Value string
- The Regex expression to match against. Must use valid RE2 regular expression syntax.
- name String
- The name of the variable
- path String
- Path to a field in an event, in dot-notation. This supports both PagerDuty Common Event Format PD-CEF and non-CEF fields. Eg: Use
event.summary
for thesummary
CEF field. Useraw_event.fieldname
to read from the original eventfieldname
data. You can use any valid PCL path. - type String
- Only
regex
is supported - value String
- The Regex expression to match against. Must use valid RE2 regular expression syntax.
- name string
- The name of the variable
- path string
- Path to a field in an event, in dot-notation. This supports both PagerDuty Common Event Format PD-CEF and non-CEF fields. Eg: Use
event.summary
for thesummary
CEF field. Useraw_event.fieldname
to read from the original eventfieldname
data. You can use any valid PCL path. - type string
- Only
regex
is supported - value string
- The Regex expression to match against. Must use valid RE2 regular expression syntax.
- name str
- The name of the variable
- path str
- Path to a field in an event, in dot-notation. This supports both PagerDuty Common Event Format PD-CEF and non-CEF fields. Eg: Use
event.summary
for thesummary
CEF field. Useraw_event.fieldname
to read from the original eventfieldname
data. You can use any valid PCL path. - type str
- Only
regex
is supported - value str
- The Regex expression to match against. Must use valid RE2 regular expression syntax.
- name String
- The name of the variable
- path String
- Path to a field in an event, in dot-notation. This supports both PagerDuty Common Event Format PD-CEF and non-CEF fields. Eg: Use
event.summary
for thesummary
CEF field. Useraw_event.fieldname
to read from the original eventfieldname
data. You can use any valid PCL path. - type String
- Only
regex
is supported - value String
- The Regex expression to match against. Must use valid RE2 regular expression syntax.
EventOrchestrationServiceSetRuleCondition, EventOrchestrationServiceSetRuleConditionArgs
- Expression string
- A PCL condition string.
- Expression string
- A PCL condition string.
- expression String
- A PCL condition string.
- expression string
- A PCL condition string.
- expression str
- A PCL condition string.
- expression String
- A PCL condition string.
Import
Service Orchestration can be imported using the id
of the Service, e.g.
$ pulumi import pagerduty:index/eventOrchestrationService:EventOrchestrationService service PFEODA7
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- PagerDuty pulumi/pulumi-pagerduty
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
pagerduty
Terraform Provider.