Sentry v0.0.9 published on Friday, Nov 15, 2024 by Pulumiverse
sentry.getSentryIssueAlert
Explore with Pulumi AI
Sentry Issue Alert data source. As the object structure of conditions, filters, and actions are undocumented, a tip is to set up an Issue Alert via the Web UI, and use this data source to copy its object structure to your resources.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as sentry from "@pulumi/sentry";
import * as sentry from "@pulumiverse/sentry";
// Retrieve an Issue Alert
// URL format: https://sentry.io/organizations/[organization]/alerts/rules/[project]/[internal_id]/details/
const original = sentry.getSentryIssueAlert({
organization: "my-organization",
project: "my-project",
internalId: "42",
});
// Create a copy of an Issue Alert
const copy = new sentry.SentryIssueAlert("copy", {
organization: original.then(original => original.organization),
project: original.then(original => original.project),
name: original.then(original => `${original.name}-copy`),
actionMatch: original.then(original => original.actionMatch),
filterMatch: original.then(original => original.filterMatch),
frequency: original.then(original => original.frequency),
conditions: original.then(original => original.conditions),
filters: original.then(original => original.filters),
actions: original.then(original => original.actions),
});
import pulumi
import pulumi_sentry as sentry
import pulumiverse_sentry as sentry
# Retrieve an Issue Alert
# URL format: https://sentry.io/organizations/[organization]/alerts/rules/[project]/[internal_id]/details/
original = sentry.get_sentry_issue_alert(organization="my-organization",
project="my-project",
internal_id="42")
# Create a copy of an Issue Alert
copy = sentry.SentryIssueAlert("copy",
organization=original.organization,
project=original.project,
name=f"{original.name}-copy",
action_match=original.action_match,
filter_match=original.filter_match,
frequency=original.frequency,
conditions=original.conditions,
filters=original.filters,
actions=original.actions)
package main
import (
"fmt"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-sentry/sdk/go/sentry"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Retrieve an Issue Alert
// URL format: https://sentry.io/organizations/[organization]/alerts/rules/[project]/[internal_id]/details/
original, err := sentry.LookupSentryIssueAlert(ctx, &sentry.LookupSentryIssueAlertArgs{
Organization: "my-organization",
Project: "my-project",
InternalId: "42",
}, nil)
if err != nil {
return err
}
// Create a copy of an Issue Alert
_, err = sentry.NewSentryIssueAlert(ctx, "copy", &sentry.SentryIssueAlertArgs{
Organization: pulumi.String(original.Organization),
Project: pulumi.String(original.Project),
Name: pulumi.Sprintf("%v-copy", original.Name),
ActionMatch: pulumi.String(original.ActionMatch),
FilterMatch: pulumi.String(original.FilterMatch),
Frequency: pulumi.Int(original.Frequency),
Conditions: interface{}(original.Conditions),
Filters: interface{}(original.Filters),
Actions: interface{}(original.Actions),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Sentry = Pulumi.Sentry;
using Sentry = Pulumiverse.Sentry;
return await Deployment.RunAsync(() =>
{
// Retrieve an Issue Alert
// URL format: https://sentry.io/organizations/[organization]/alerts/rules/[project]/[internal_id]/details/
var original = Sentry.GetSentryIssueAlert.Invoke(new()
{
Organization = "my-organization",
Project = "my-project",
InternalId = "42",
});
// Create a copy of an Issue Alert
var copy = new Sentry.SentryIssueAlert("copy", new()
{
Organization = original.Apply(getSentryIssueAlertResult => getSentryIssueAlertResult.Organization),
Project = original.Apply(getSentryIssueAlertResult => getSentryIssueAlertResult.Project),
Name = $"{original.Apply(getSentryIssueAlertResult => getSentryIssueAlertResult.Name)}-copy",
ActionMatch = original.Apply(getSentryIssueAlertResult => getSentryIssueAlertResult.ActionMatch),
FilterMatch = original.Apply(getSentryIssueAlertResult => getSentryIssueAlertResult.FilterMatch),
Frequency = original.Apply(getSentryIssueAlertResult => getSentryIssueAlertResult.Frequency),
Conditions = original.Apply(getSentryIssueAlertResult => getSentryIssueAlertResult.Conditions),
Filters = original.Apply(getSentryIssueAlertResult => getSentryIssueAlertResult.Filters),
Actions = original.Apply(getSentryIssueAlertResult => getSentryIssueAlertResult.Actions),
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.sentry.SentryFunctions;
import com.pulumi.sentry.inputs.GetSentryIssueAlertArgs;
import com.pulumi.sentry.SentryIssueAlert;
import com.pulumi.sentry.SentryIssueAlertArgs;
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) {
// Retrieve an Issue Alert
// URL format: https://sentry.io/organizations/[organization]/alerts/rules/[project]/[internal_id]/details/
final var original = SentryFunctions.getSentryIssueAlert(GetSentryIssueAlertArgs.builder()
.organization("my-organization")
.project("my-project")
.internalId("42")
.build());
// Create a copy of an Issue Alert
var copy = new SentryIssueAlert("copy", SentryIssueAlertArgs.builder()
.organization(original.applyValue(getSentryIssueAlertResult -> getSentryIssueAlertResult.organization()))
.project(original.applyValue(getSentryIssueAlertResult -> getSentryIssueAlertResult.project()))
.name(String.format("%s-copy", original.applyValue(getSentryIssueAlertResult -> getSentryIssueAlertResult.name())))
.actionMatch(original.applyValue(getSentryIssueAlertResult -> getSentryIssueAlertResult.actionMatch()))
.filterMatch(original.applyValue(getSentryIssueAlertResult -> getSentryIssueAlertResult.filterMatch()))
.frequency(original.applyValue(getSentryIssueAlertResult -> getSentryIssueAlertResult.frequency()))
.conditions(original.applyValue(getSentryIssueAlertResult -> getSentryIssueAlertResult.conditions()))
.filters(original.applyValue(getSentryIssueAlertResult -> getSentryIssueAlertResult.filters()))
.actions(original.applyValue(getSentryIssueAlertResult -> getSentryIssueAlertResult.actions()))
.build());
}
}
resources:
# Create a copy of an Issue Alert
copy:
type: sentry:SentryIssueAlert
properties:
organization: ${original.organization}
project: ${original.project}
name: ${original.name}-copy
actionMatch: ${original.actionMatch}
filterMatch: ${original.filterMatch}
frequency: ${original.frequency}
conditions: ${original.conditions}
filters: ${original.filters}
actions: ${original.actions}
variables:
# Retrieve an Issue Alert
# URL format: https://sentry.io/organizations/[organization]/alerts/rules/[project]/[internal_id]/details/
original:
fn::invoke:
Function: sentry:getSentryIssueAlert
Arguments:
organization: my-organization
project: my-project
internalId: '42'
Using getSentryIssueAlert
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getSentryIssueAlert(args: GetSentryIssueAlertArgs, opts?: InvokeOptions): Promise<GetSentryIssueAlertResult>
function getSentryIssueAlertOutput(args: GetSentryIssueAlertOutputArgs, opts?: InvokeOptions): Output<GetSentryIssueAlertResult>def get_sentry_issue_alert(internal_id: Optional[str] = None,
organization: Optional[str] = None,
project: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetSentryIssueAlertResult
def get_sentry_issue_alert_output(internal_id: Optional[pulumi.Input[str]] = None,
organization: Optional[pulumi.Input[str]] = None,
project: Optional[pulumi.Input[str]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetSentryIssueAlertResult]func LookupSentryIssueAlert(ctx *Context, args *LookupSentryIssueAlertArgs, opts ...InvokeOption) (*LookupSentryIssueAlertResult, error)
func LookupSentryIssueAlertOutput(ctx *Context, args *LookupSentryIssueAlertOutputArgs, opts ...InvokeOption) LookupSentryIssueAlertResultOutput> Note: This function is named LookupSentryIssueAlert in the Go SDK.
public static class GetSentryIssueAlert
{
public static Task<GetSentryIssueAlertResult> InvokeAsync(GetSentryIssueAlertArgs args, InvokeOptions? opts = null)
public static Output<GetSentryIssueAlertResult> Invoke(GetSentryIssueAlertInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetSentryIssueAlertResult> getSentryIssueAlert(GetSentryIssueAlertArgs args, InvokeOptions options)
public static Output<GetSentryIssueAlertResult> getSentryIssueAlert(GetSentryIssueAlertArgs args, InvokeOptions options)
fn::invoke:
function: sentry:index/getSentryIssueAlert:getSentryIssueAlert
arguments:
# arguments dictionaryThe following arguments are supported:
- Internal
Id string - The internal ID for this issue alert.
- Organization string
- The slug of the organization the issue alert belongs to.
- Project string
- The slug of the project the issue alert belongs to.
- Internal
Id string - The internal ID for this issue alert.
- Organization string
- The slug of the organization the issue alert belongs to.
- Project string
- The slug of the project the issue alert belongs to.
- internal
Id String - The internal ID for this issue alert.
- organization String
- The slug of the organization the issue alert belongs to.
- project String
- The slug of the project the issue alert belongs to.
- internal
Id string - The internal ID for this issue alert.
- organization string
- The slug of the organization the issue alert belongs to.
- project string
- The slug of the project the issue alert belongs to.
- internal_
id str - The internal ID for this issue alert.
- organization str
- The slug of the organization the issue alert belongs to.
- project str
- The slug of the project the issue alert belongs to.
- internal
Id String - The internal ID for this issue alert.
- organization String
- The slug of the organization the issue alert belongs to.
- project String
- The slug of the project the issue alert belongs to.
getSentryIssueAlert Result
The following output properties are available:
- Action
Match string - Trigger actions when an event is captured by Sentry and
anyorallof the specified conditions happen. - Actions
List<Immutable
Dictionary<string, string>> - List of actions.
- Conditions
List<Immutable
Dictionary<string, string>> - List of conditions.
- Environment string
- Perform issue alert in a specific environment.
- Filter
Match string - Trigger actions if
all,any, ornoneof the specified filters match. - Filters
List<Immutable
Dictionary<string, string>> - List of filters.
- Frequency int
- Perform actions at most once every
Xminutes for this issue. Defaults to30. - Id string
- The provider-assigned unique ID for this managed resource.
- Internal
Id string - The internal ID for this issue alert.
- Name string
- The issue alert name.
- Organization string
- The slug of the organization the issue alert belongs to.
- Project string
- The slug of the project the issue alert belongs to.
- Action
Match string - Trigger actions when an event is captured by Sentry and
anyorallof the specified conditions happen. - Actions []map[string]string
- List of actions.
- Conditions []map[string]string
- List of conditions.
- Environment string
- Perform issue alert in a specific environment.
- Filter
Match string - Trigger actions if
all,any, ornoneof the specified filters match. - Filters []map[string]string
- List of filters.
- Frequency int
- Perform actions at most once every
Xminutes for this issue. Defaults to30. - Id string
- The provider-assigned unique ID for this managed resource.
- Internal
Id string - The internal ID for this issue alert.
- Name string
- The issue alert name.
- Organization string
- The slug of the organization the issue alert belongs to.
- Project string
- The slug of the project the issue alert belongs to.
- action
Match String - Trigger actions when an event is captured by Sentry and
anyorallof the specified conditions happen. - actions List<Map<String,String>>
- List of actions.
- conditions List<Map<String,String>>
- List of conditions.
- environment String
- Perform issue alert in a specific environment.
- filter
Match String - Trigger actions if
all,any, ornoneof the specified filters match. - filters List<Map<String,String>>
- List of filters.
- frequency Integer
- Perform actions at most once every
Xminutes for this issue. Defaults to30. - id String
- The provider-assigned unique ID for this managed resource.
- internal
Id String - The internal ID for this issue alert.
- name String
- The issue alert name.
- organization String
- The slug of the organization the issue alert belongs to.
- project String
- The slug of the project the issue alert belongs to.
- action
Match string - Trigger actions when an event is captured by Sentry and
anyorallof the specified conditions happen. - actions {[key: string]: string}[]
- List of actions.
- conditions {[key: string]: string}[]
- List of conditions.
- environment string
- Perform issue alert in a specific environment.
- filter
Match string - Trigger actions if
all,any, ornoneof the specified filters match. - filters {[key: string]: string}[]
- List of filters.
- frequency number
- Perform actions at most once every
Xminutes for this issue. Defaults to30. - id string
- The provider-assigned unique ID for this managed resource.
- internal
Id string - The internal ID for this issue alert.
- name string
- The issue alert name.
- organization string
- The slug of the organization the issue alert belongs to.
- project string
- The slug of the project the issue alert belongs to.
- action_
match str - Trigger actions when an event is captured by Sentry and
anyorallof the specified conditions happen. - actions Sequence[Mapping[str, str]]
- List of actions.
- conditions Sequence[Mapping[str, str]]
- List of conditions.
- environment str
- Perform issue alert in a specific environment.
- filter_
match str - Trigger actions if
all,any, ornoneof the specified filters match. - filters Sequence[Mapping[str, str]]
- List of filters.
- frequency int
- Perform actions at most once every
Xminutes for this issue. Defaults to30. - id str
- The provider-assigned unique ID for this managed resource.
- internal_
id str - The internal ID for this issue alert.
- name str
- The issue alert name.
- organization str
- The slug of the organization the issue alert belongs to.
- project str
- The slug of the project the issue alert belongs to.
- action
Match String - Trigger actions when an event is captured by Sentry and
anyorallof the specified conditions happen. - actions List<Map<String>>
- List of actions.
- conditions List<Map<String>>
- List of conditions.
- environment String
- Perform issue alert in a specific environment.
- filter
Match String - Trigger actions if
all,any, ornoneof the specified filters match. - filters List<Map<String>>
- List of filters.
- frequency Number
- Perform actions at most once every
Xminutes for this issue. Defaults to30. - id String
- The provider-assigned unique ID for this managed resource.
- internal
Id String - The internal ID for this issue alert.
- name String
- The issue alert name.
- organization String
- The slug of the organization the issue alert belongs to.
- project String
- The slug of the project the issue alert belongs to.
Package Details
- Repository
- sentry pulumiverse/pulumi-sentry
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
sentryTerraform Provider.