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)
// Output-based functions aren't available in Java yet
fn::invoke:
function: sentry:index/getSentryIssueAlert:getSentryIssueAlert
arguments:
# arguments dictionary
The 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
any
orall
of 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
, ornone
of the specified filters match. - Filters
List<Immutable
Dictionary<string, string>> - List of filters.
- Frequency int
- Perform actions at most once every
X
minutes 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
any
orall
of 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
, ornone
of the specified filters match. - Filters []map[string]string
- List of filters.
- Frequency int
- Perform actions at most once every
X
minutes 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
any
orall
of 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
, ornone
of the specified filters match. - filters List<Map<String,String>>
- List of filters.
- frequency Integer
- Perform actions at most once every
X
minutes 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
any
orall
of 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
, ornone
of the specified filters match. - filters {[key: string]: string}[]
- List of filters.
- frequency number
- Perform actions at most once every
X
minutes 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
any
orall
of 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
, ornone
of the specified filters match. - filters Sequence[Mapping[str, str]]
- List of filters.
- frequency int
- Perform actions at most once every
X
minutes 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
any
orall
of 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
, ornone
of the specified filters match. - filters List<Map<String>>
- List of filters.
- frequency Number
- Perform actions at most once every
X
minutes 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
sentry
Terraform Provider.