newrelic.AlertCondition
Explore with Pulumi AI
Use this resource to create and manage alert conditions for APM, Browser, and Mobile in New Relic.
WARNING: The
newrelic.AlertConditionresource is deprecated and will be removed in the next major release. The resource newrelic.NrqlAlertCondition would be a preferred alternative to configure alert conditions - in most cases, feature parity can be achieved with a NRQL query.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const app = newrelic.getEntity({
    name: "my-app",
    type: "APPLICATION",
    domain: "APM",
});
const foo = new newrelic.AlertPolicy("foo", {name: "foo"});
const fooAlertCondition = new newrelic.AlertCondition("foo", {
    policyId: foo.id,
    name: "foo",
    type: "apm_app_metric",
    entities: [app.then(app => app.applicationId)],
    metric: "apdex",
    runbookUrl: "https://www.example.com",
    conditionScope: "application",
    terms: [{
        duration: 5,
        operator: "below",
        priority: "critical",
        threshold: 0.75,
        timeFunction: "all",
    }],
});
import pulumi
import pulumi_newrelic as newrelic
app = newrelic.get_entity(name="my-app",
    type="APPLICATION",
    domain="APM")
foo = newrelic.AlertPolicy("foo", name="foo")
foo_alert_condition = newrelic.AlertCondition("foo",
    policy_id=foo.id,
    name="foo",
    type="apm_app_metric",
    entities=[app.application_id],
    metric="apdex",
    runbook_url="https://www.example.com",
    condition_scope="application",
    terms=[newrelic.AlertConditionTermArgs(
        duration=5,
        operator="below",
        priority="critical",
        threshold=0.75,
        time_function="all",
    )])
package main
import (
	"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		app, err := newrelic.GetEntity(ctx, &newrelic.GetEntityArgs{
			Name:   "my-app",
			Type:   pulumi.StringRef("APPLICATION"),
			Domain: pulumi.StringRef("APM"),
		}, nil)
		if err != nil {
			return err
		}
		foo, err := newrelic.NewAlertPolicy(ctx, "foo", &newrelic.AlertPolicyArgs{
			Name: pulumi.String("foo"),
		})
		if err != nil {
			return err
		}
		_, err = newrelic.NewAlertCondition(ctx, "foo", &newrelic.AlertConditionArgs{
			PolicyId: foo.ID(),
			Name:     pulumi.String("foo"),
			Type:     pulumi.String("apm_app_metric"),
			Entities: pulumi.StringArray{
				pulumi.String(app.ApplicationId),
			},
			Metric:         pulumi.String("apdex"),
			RunbookUrl:     pulumi.String("https://www.example.com"),
			ConditionScope: pulumi.String("application"),
			Terms: newrelic.AlertConditionTermArray{
				&newrelic.AlertConditionTermArgs{
					Duration:     pulumi.Int(5),
					Operator:     pulumi.String("below"),
					Priority:     pulumi.String("critical"),
					Threshold:    pulumi.Float64(0.75),
					TimeFunction: pulumi.String("all"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() => 
{
    var app = NewRelic.GetEntity.Invoke(new()
    {
        Name = "my-app",
        Type = "APPLICATION",
        Domain = "APM",
    });
    var foo = new NewRelic.AlertPolicy("foo", new()
    {
        Name = "foo",
    });
    var fooAlertCondition = new NewRelic.AlertCondition("foo", new()
    {
        PolicyId = foo.Id,
        Name = "foo",
        Type = "apm_app_metric",
        Entities = new[]
        {
            app.Apply(getEntityResult => getEntityResult.ApplicationId),
        },
        Metric = "apdex",
        RunbookUrl = "https://www.example.com",
        ConditionScope = "application",
        Terms = new[]
        {
            new NewRelic.Inputs.AlertConditionTermArgs
            {
                Duration = 5,
                Operator = "below",
                Priority = "critical",
                Threshold = 0.75,
                TimeFunction = "all",
            },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NewrelicFunctions;
import com.pulumi.newrelic.inputs.GetEntityArgs;
import com.pulumi.newrelic.AlertPolicy;
import com.pulumi.newrelic.AlertPolicyArgs;
import com.pulumi.newrelic.AlertCondition;
import com.pulumi.newrelic.AlertConditionArgs;
import com.pulumi.newrelic.inputs.AlertConditionTermArgs;
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) {
        final var app = NewrelicFunctions.getEntity(GetEntityArgs.builder()
            .name("my-app")
            .type("APPLICATION")
            .domain("APM")
            .build());
        var foo = new AlertPolicy("foo", AlertPolicyArgs.builder()
            .name("foo")
            .build());
        var fooAlertCondition = new AlertCondition("fooAlertCondition", AlertConditionArgs.builder()
            .policyId(foo.id())
            .name("foo")
            .type("apm_app_metric")
            .entities(app.applyValue(getEntityResult -> getEntityResult.applicationId()))
            .metric("apdex")
            .runbookUrl("https://www.example.com")
            .conditionScope("application")
            .terms(AlertConditionTermArgs.builder()
                .duration(5)
                .operator("below")
                .priority("critical")
                .threshold("0.75")
                .timeFunction("all")
                .build())
            .build());
    }
}
resources:
  foo:
    type: newrelic:AlertPolicy
    properties:
      name: foo
  fooAlertCondition:
    type: newrelic:AlertCondition
    name: foo
    properties:
      policyId: ${foo.id}
      name: foo
      type: apm_app_metric
      entities:
        - ${app.applicationId}
      metric: apdex
      runbookUrl: https://www.example.com
      conditionScope: application
      terms:
        - duration: 5
          operator: below
          priority: critical
          threshold: '0.75'
          timeFunction: all
variables:
  app:
    fn::invoke:
      Function: newrelic:getEntity
      Arguments:
        name: my-app
        type: APPLICATION
        domain: APM
Terms
The term mapping supports the following arguments:
duration- (Required) In minutes, must be in the range of5to120, inclusive.operator- (Optional)above,below, orequal. Defaults toequal.priority- (Optional)criticalorwarning. Defaults tocritical. Terms must include at least onecriticalpriority termthreshold- (Required) Must be 0 or greater.time_function- (Required)allorany.
Tags
Manage alert condition tags with newrelic.EntityTags. For up-to-date documentation about the tagging resource, please check newrelic.EntityTags
import * as pulumi from "@pulumi/pulumi";
import * as newrelic from "@pulumi/newrelic";
const foo = newrelic.getEntity({
    name: "foo entitiy",
});
const fooAlertPolicy = new newrelic.AlertPolicy("foo", {name: "foo policy"});
const fooAlertCondition = new newrelic.AlertCondition("foo", {
    policyId: fooAlertPolicy.id,
    name: "foo condition",
    type: "apm_app_metric",
    entities: [foo.then(foo => foo.applicationId)],
    metric: "apdex",
    runbookUrl: "https://www.example.com",
    conditionScope: "application",
    terms: [{
        duration: 5,
        operator: "below",
        priority: "critical",
        threshold: 0.75,
        timeFunction: "all",
    }],
});
const myConditionEntityTags = new newrelic.EntityTags("my_condition_entity_tags", {
    guid: fooAlertCondition.entityGuid,
    tags: [
        {
            key: "my-key",
            values: [
                "my-value",
                "my-other-value",
            ],
        },
        {
            key: "my-key-2",
            values: ["my-value-2"],
        },
    ],
});
import pulumi
import pulumi_newrelic as newrelic
foo = newrelic.get_entity(name="foo entitiy")
foo_alert_policy = newrelic.AlertPolicy("foo", name="foo policy")
foo_alert_condition = newrelic.AlertCondition("foo",
    policy_id=foo_alert_policy.id,
    name="foo condition",
    type="apm_app_metric",
    entities=[foo.application_id],
    metric="apdex",
    runbook_url="https://www.example.com",
    condition_scope="application",
    terms=[newrelic.AlertConditionTermArgs(
        duration=5,
        operator="below",
        priority="critical",
        threshold=0.75,
        time_function="all",
    )])
my_condition_entity_tags = newrelic.EntityTags("my_condition_entity_tags",
    guid=foo_alert_condition.entity_guid,
    tags=[
        newrelic.EntityTagsTagArgs(
            key="my-key",
            values=[
                "my-value",
                "my-other-value",
            ],
        ),
        newrelic.EntityTagsTagArgs(
            key="my-key-2",
            values=["my-value-2"],
        ),
    ])
package main
import (
	"github.com/pulumi/pulumi-newrelic/sdk/v5/go/newrelic"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		foo, err := newrelic.GetEntity(ctx, &newrelic.GetEntityArgs{
			Name: "foo entitiy",
		}, nil)
		if err != nil {
			return err
		}
		fooAlertPolicy, err := newrelic.NewAlertPolicy(ctx, "foo", &newrelic.AlertPolicyArgs{
			Name: pulumi.String("foo policy"),
		})
		if err != nil {
			return err
		}
		fooAlertCondition, err := newrelic.NewAlertCondition(ctx, "foo", &newrelic.AlertConditionArgs{
			PolicyId: fooAlertPolicy.ID(),
			Name:     pulumi.String("foo condition"),
			Type:     pulumi.String("apm_app_metric"),
			Entities: pulumi.StringArray{
				pulumi.String(foo.ApplicationId),
			},
			Metric:         pulumi.String("apdex"),
			RunbookUrl:     pulumi.String("https://www.example.com"),
			ConditionScope: pulumi.String("application"),
			Terms: newrelic.AlertConditionTermArray{
				&newrelic.AlertConditionTermArgs{
					Duration:     pulumi.Int(5),
					Operator:     pulumi.String("below"),
					Priority:     pulumi.String("critical"),
					Threshold:    pulumi.Float64(0.75),
					TimeFunction: pulumi.String("all"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = newrelic.NewEntityTags(ctx, "my_condition_entity_tags", &newrelic.EntityTagsArgs{
			Guid: fooAlertCondition.EntityGuid,
			Tags: newrelic.EntityTagsTagArray{
				&newrelic.EntityTagsTagArgs{
					Key: pulumi.String("my-key"),
					Values: pulumi.StringArray{
						pulumi.String("my-value"),
						pulumi.String("my-other-value"),
					},
				},
				&newrelic.EntityTagsTagArgs{
					Key: pulumi.String("my-key-2"),
					Values: pulumi.StringArray{
						pulumi.String("my-value-2"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using NewRelic = Pulumi.NewRelic;
return await Deployment.RunAsync(() => 
{
    var foo = NewRelic.GetEntity.Invoke(new()
    {
        Name = "foo entitiy",
    });
    var fooAlertPolicy = new NewRelic.AlertPolicy("foo", new()
    {
        Name = "foo policy",
    });
    var fooAlertCondition = new NewRelic.AlertCondition("foo", new()
    {
        PolicyId = fooAlertPolicy.Id,
        Name = "foo condition",
        Type = "apm_app_metric",
        Entities = new[]
        {
            foo.Apply(getEntityResult => getEntityResult.ApplicationId),
        },
        Metric = "apdex",
        RunbookUrl = "https://www.example.com",
        ConditionScope = "application",
        Terms = new[]
        {
            new NewRelic.Inputs.AlertConditionTermArgs
            {
                Duration = 5,
                Operator = "below",
                Priority = "critical",
                Threshold = 0.75,
                TimeFunction = "all",
            },
        },
    });
    var myConditionEntityTags = new NewRelic.EntityTags("my_condition_entity_tags", new()
    {
        Guid = fooAlertCondition.EntityGuid,
        Tags = new[]
        {
            new NewRelic.Inputs.EntityTagsTagArgs
            {
                Key = "my-key",
                Values = new[]
                {
                    "my-value",
                    "my-other-value",
                },
            },
            new NewRelic.Inputs.EntityTagsTagArgs
            {
                Key = "my-key-2",
                Values = new[]
                {
                    "my-value-2",
                },
            },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.newrelic.NewrelicFunctions;
import com.pulumi.newrelic.inputs.GetEntityArgs;
import com.pulumi.newrelic.AlertPolicy;
import com.pulumi.newrelic.AlertPolicyArgs;
import com.pulumi.newrelic.AlertCondition;
import com.pulumi.newrelic.AlertConditionArgs;
import com.pulumi.newrelic.inputs.AlertConditionTermArgs;
import com.pulumi.newrelic.EntityTags;
import com.pulumi.newrelic.EntityTagsArgs;
import com.pulumi.newrelic.inputs.EntityTagsTagArgs;
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) {
        final var foo = NewrelicFunctions.getEntity(GetEntityArgs.builder()
            .name("foo entitiy")
            .build());
        var fooAlertPolicy = new AlertPolicy("fooAlertPolicy", AlertPolicyArgs.builder()
            .name("foo policy")
            .build());
        var fooAlertCondition = new AlertCondition("fooAlertCondition", AlertConditionArgs.builder()
            .policyId(fooAlertPolicy.id())
            .name("foo condition")
            .type("apm_app_metric")
            .entities(foo.applyValue(getEntityResult -> getEntityResult.applicationId()))
            .metric("apdex")
            .runbookUrl("https://www.example.com")
            .conditionScope("application")
            .terms(AlertConditionTermArgs.builder()
                .duration(5)
                .operator("below")
                .priority("critical")
                .threshold("0.75")
                .timeFunction("all")
                .build())
            .build());
        var myConditionEntityTags = new EntityTags("myConditionEntityTags", EntityTagsArgs.builder()
            .guid(fooAlertCondition.entityGuid())
            .tags(            
                EntityTagsTagArgs.builder()
                    .key("my-key")
                    .values(                    
                        "my-value",
                        "my-other-value")
                    .build(),
                EntityTagsTagArgs.builder()
                    .key("my-key-2")
                    .values("my-value-2")
                    .build())
            .build());
    }
}
resources:
  fooAlertPolicy:
    type: newrelic:AlertPolicy
    name: foo
    properties:
      name: foo policy
  fooAlertCondition:
    type: newrelic:AlertCondition
    name: foo
    properties:
      policyId: ${fooAlertPolicy.id}
      name: foo condition
      type: apm_app_metric
      entities:
        - ${foo.applicationId}
      metric: apdex
      runbookUrl: https://www.example.com
      conditionScope: application
      terms:
        - duration: 5
          operator: below
          priority: critical
          threshold: '0.75'
          timeFunction: all
  myConditionEntityTags:
    type: newrelic:EntityTags
    name: my_condition_entity_tags
    properties:
      guid: ${fooAlertCondition.entityGuid}
      tags:
        - key: my-key
          values:
            - my-value
            - my-other-value
        - key: my-key-2
          values:
            - my-value-2
variables:
  foo:
    fn::invoke:
      Function: newrelic:getEntity
      Arguments:
        name: foo entitiy
Create AlertCondition Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new AlertCondition(name: string, args: AlertConditionArgs, opts?: CustomResourceOptions);@overload
def AlertCondition(resource_name: str,
                   args: AlertConditionArgs,
                   opts: Optional[ResourceOptions] = None)
@overload
def AlertCondition(resource_name: str,
                   opts: Optional[ResourceOptions] = None,
                   type: Optional[str] = None,
                   entities: Optional[Sequence[str]] = None,
                   metric: Optional[str] = None,
                   policy_id: Optional[str] = None,
                   terms: Optional[Sequence[AlertConditionTermArgs]] = None,
                   enabled: Optional[bool] = None,
                   gc_metric: Optional[str] = None,
                   name: Optional[str] = None,
                   runbook_url: Optional[str] = None,
                   condition_scope: Optional[str] = None,
                   user_defined_metric: Optional[str] = None,
                   user_defined_value_function: Optional[str] = None,
                   violation_close_timer: Optional[int] = None)func NewAlertCondition(ctx *Context, name string, args AlertConditionArgs, opts ...ResourceOption) (*AlertCondition, error)public AlertCondition(string name, AlertConditionArgs args, CustomResourceOptions? opts = null)
public AlertCondition(String name, AlertConditionArgs args)
public AlertCondition(String name, AlertConditionArgs args, CustomResourceOptions options)
type: newrelic:AlertCondition
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 AlertConditionArgs
 - 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 AlertConditionArgs
 - 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 AlertConditionArgs
 - The arguments to resource properties.
 - opts ResourceOption
 - Bag of options to control resource's behavior.
 
- name string
 - The unique name of the resource.
 - args AlertConditionArgs
 - The arguments to resource properties.
 - opts CustomResourceOptions
 - Bag of options to control resource's behavior.
 
- name String
 - The unique name of the resource.
 - args AlertConditionArgs
 - 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 alertConditionResource = new NewRelic.AlertCondition("alertConditionResource", new()
{
    Type = "string",
    Entities = new[]
    {
        "string",
    },
    Metric = "string",
    PolicyId = "string",
    Terms = new[]
    {
        new NewRelic.Inputs.AlertConditionTermArgs
        {
            Duration = 0,
            Threshold = 0,
            TimeFunction = "string",
            Operator = "string",
            Priority = "string",
        },
    },
    Enabled = false,
    GcMetric = "string",
    Name = "string",
    RunbookUrl = "string",
    ConditionScope = "string",
    UserDefinedMetric = "string",
    UserDefinedValueFunction = "string",
    ViolationCloseTimer = 0,
});
example, err := newrelic.NewAlertCondition(ctx, "alertConditionResource", &newrelic.AlertConditionArgs{
	Type: pulumi.String("string"),
	Entities: pulumi.StringArray{
		pulumi.String("string"),
	},
	Metric:   pulumi.String("string"),
	PolicyId: pulumi.String("string"),
	Terms: newrelic.AlertConditionTermArray{
		&newrelic.AlertConditionTermArgs{
			Duration:     pulumi.Int(0),
			Threshold:    pulumi.Float64(0),
			TimeFunction: pulumi.String("string"),
			Operator:     pulumi.String("string"),
			Priority:     pulumi.String("string"),
		},
	},
	Enabled:                  pulumi.Bool(false),
	GcMetric:                 pulumi.String("string"),
	Name:                     pulumi.String("string"),
	RunbookUrl:               pulumi.String("string"),
	ConditionScope:           pulumi.String("string"),
	UserDefinedMetric:        pulumi.String("string"),
	UserDefinedValueFunction: pulumi.String("string"),
	ViolationCloseTimer:      pulumi.Int(0),
})
var alertConditionResource = new AlertCondition("alertConditionResource", AlertConditionArgs.builder()
    .type("string")
    .entities("string")
    .metric("string")
    .policyId("string")
    .terms(AlertConditionTermArgs.builder()
        .duration(0)
        .threshold(0)
        .timeFunction("string")
        .operator("string")
        .priority("string")
        .build())
    .enabled(false)
    .gcMetric("string")
    .name("string")
    .runbookUrl("string")
    .conditionScope("string")
    .userDefinedMetric("string")
    .userDefinedValueFunction("string")
    .violationCloseTimer(0)
    .build());
alert_condition_resource = newrelic.AlertCondition("alertConditionResource",
    type="string",
    entities=["string"],
    metric="string",
    policy_id="string",
    terms=[newrelic.AlertConditionTermArgs(
        duration=0,
        threshold=0,
        time_function="string",
        operator="string",
        priority="string",
    )],
    enabled=False,
    gc_metric="string",
    name="string",
    runbook_url="string",
    condition_scope="string",
    user_defined_metric="string",
    user_defined_value_function="string",
    violation_close_timer=0)
const alertConditionResource = new newrelic.AlertCondition("alertConditionResource", {
    type: "string",
    entities: ["string"],
    metric: "string",
    policyId: "string",
    terms: [{
        duration: 0,
        threshold: 0,
        timeFunction: "string",
        operator: "string",
        priority: "string",
    }],
    enabled: false,
    gcMetric: "string",
    name: "string",
    runbookUrl: "string",
    conditionScope: "string",
    userDefinedMetric: "string",
    userDefinedValueFunction: "string",
    violationCloseTimer: 0,
});
type: newrelic:AlertCondition
properties:
    conditionScope: string
    enabled: false
    entities:
        - string
    gcMetric: string
    metric: string
    name: string
    policyId: string
    runbookUrl: string
    terms:
        - duration: 0
          operator: string
          priority: string
          threshold: 0
          timeFunction: string
    type: string
    userDefinedMetric: string
    userDefinedValueFunction: string
    violationCloseTimer: 0
AlertCondition 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 AlertCondition resource accepts the following input properties:
- Entities List<string>
 - The instance IDs associated with this condition.
 - Metric string
 - The metric field accepts parameters based on the 
typeset. One of these metrics based ontype: - Policy
Id string - The ID of the policy where this condition should be used.
 - Terms
List<Pulumi.
New Relic. Inputs. Alert Condition Term>  - A list of terms for this condition. See Terms below for details.
 - Type string
 - The type of condition. One of: 
apm_app_metric,apm_jvm_metric,apm_kt_metric,browser_metric,mobile_metric - Condition
Scope string applicationorinstance. Chooseapplicationfor most scenarios. If you are using the JVM plugin in New Relic, theinstancesetting allows your condition to trigger for specific app instances.- Enabled bool
 - Whether the condition is enabled or not. Defaults to true.
 - Gc
Metric string - A valid Garbage Collection metric e.g. 
GC/G1 Young Generation. - Name string
 - The title of the condition. Must be between 1 and 64 characters, inclusive.
 - Runbook
Url string - Runbook URL to display in notifications.
 - User
Defined stringMetric  - A custom metric to be evaluated.
 - User
Defined stringValue Function  One of:
average,min,max,total,sample_size,rateorpercent.NOTE: The
user_defined_value_functioncan haverateorpercentonly when thetypeismobile_metric.Warning: This resource will use the account ID linked to your API key. At the moment it is not possible to dynamically set the account ID.- Violation
Close intTimer  - Automatically close instance-based incidents, including JVM health metric incidents, after the number of hours specified. Must be between 1 and 720 hours. Must be specified in the following two cases, to prevent drift:
- when 
type=apm_app_metricandcondition_scope=instance - when 
type=apm_jvm_metric 
 - when 
 
- Entities []string
 - The instance IDs associated with this condition.
 - Metric string
 - The metric field accepts parameters based on the 
typeset. One of these metrics based ontype: - Policy
Id string - The ID of the policy where this condition should be used.
 - Terms
[]Alert
Condition Term Args  - A list of terms for this condition. See Terms below for details.
 - Type string
 - The type of condition. One of: 
apm_app_metric,apm_jvm_metric,apm_kt_metric,browser_metric,mobile_metric - Condition
Scope string applicationorinstance. Chooseapplicationfor most scenarios. If you are using the JVM plugin in New Relic, theinstancesetting allows your condition to trigger for specific app instances.- Enabled bool
 - Whether the condition is enabled or not. Defaults to true.
 - Gc
Metric string - A valid Garbage Collection metric e.g. 
GC/G1 Young Generation. - Name string
 - The title of the condition. Must be between 1 and 64 characters, inclusive.
 - Runbook
Url string - Runbook URL to display in notifications.
 - User
Defined stringMetric  - A custom metric to be evaluated.
 - User
Defined stringValue Function  One of:
average,min,max,total,sample_size,rateorpercent.NOTE: The
user_defined_value_functioncan haverateorpercentonly when thetypeismobile_metric.Warning: This resource will use the account ID linked to your API key. At the moment it is not possible to dynamically set the account ID.- Violation
Close intTimer  - Automatically close instance-based incidents, including JVM health metric incidents, after the number of hours specified. Must be between 1 and 720 hours. Must be specified in the following two cases, to prevent drift:
- when 
type=apm_app_metricandcondition_scope=instance - when 
type=apm_jvm_metric 
 - when 
 
- entities List<String>
 - The instance IDs associated with this condition.
 - metric String
 - The metric field accepts parameters based on the 
typeset. One of these metrics based ontype: - policy
Id String - The ID of the policy where this condition should be used.
 - terms
List<Alert
Condition Term>  - A list of terms for this condition. See Terms below for details.
 - type String
 - The type of condition. One of: 
apm_app_metric,apm_jvm_metric,apm_kt_metric,browser_metric,mobile_metric - condition
Scope String applicationorinstance. Chooseapplicationfor most scenarios. If you are using the JVM plugin in New Relic, theinstancesetting allows your condition to trigger for specific app instances.- enabled Boolean
 - Whether the condition is enabled or not. Defaults to true.
 - gc
Metric String - A valid Garbage Collection metric e.g. 
GC/G1 Young Generation. - name String
 - The title of the condition. Must be between 1 and 64 characters, inclusive.
 - runbook
Url String - Runbook URL to display in notifications.
 - user
Defined StringMetric  - A custom metric to be evaluated.
 - user
Defined StringValue Function  One of:
average,min,max,total,sample_size,rateorpercent.NOTE: The
user_defined_value_functioncan haverateorpercentonly when thetypeismobile_metric.Warning: This resource will use the account ID linked to your API key. At the moment it is not possible to dynamically set the account ID.- violation
Close IntegerTimer  - Automatically close instance-based incidents, including JVM health metric incidents, after the number of hours specified. Must be between 1 and 720 hours. Must be specified in the following two cases, to prevent drift:
- when 
type=apm_app_metricandcondition_scope=instance - when 
type=apm_jvm_metric 
 - when 
 
- entities string[]
 - The instance IDs associated with this condition.
 - metric string
 - The metric field accepts parameters based on the 
typeset. One of these metrics based ontype: - policy
Id string - The ID of the policy where this condition should be used.
 - terms
Alert
Condition Term[]  - A list of terms for this condition. See Terms below for details.
 - type string
 - The type of condition. One of: 
apm_app_metric,apm_jvm_metric,apm_kt_metric,browser_metric,mobile_metric - condition
Scope string applicationorinstance. Chooseapplicationfor most scenarios. If you are using the JVM plugin in New Relic, theinstancesetting allows your condition to trigger for specific app instances.- enabled boolean
 - Whether the condition is enabled or not. Defaults to true.
 - gc
Metric string - A valid Garbage Collection metric e.g. 
GC/G1 Young Generation. - name string
 - The title of the condition. Must be between 1 and 64 characters, inclusive.
 - runbook
Url string - Runbook URL to display in notifications.
 - user
Defined stringMetric  - A custom metric to be evaluated.
 - user
Defined stringValue Function  One of:
average,min,max,total,sample_size,rateorpercent.NOTE: The
user_defined_value_functioncan haverateorpercentonly when thetypeismobile_metric.Warning: This resource will use the account ID linked to your API key. At the moment it is not possible to dynamically set the account ID.- violation
Close numberTimer  - Automatically close instance-based incidents, including JVM health metric incidents, after the number of hours specified. Must be between 1 and 720 hours. Must be specified in the following two cases, to prevent drift:
- when 
type=apm_app_metricandcondition_scope=instance - when 
type=apm_jvm_metric 
 - when 
 
- entities Sequence[str]
 - The instance IDs associated with this condition.
 - metric str
 - The metric field accepts parameters based on the 
typeset. One of these metrics based ontype: - policy_
id str - The ID of the policy where this condition should be used.
 - terms
Sequence[Alert
Condition Term Args]  - A list of terms for this condition. See Terms below for details.
 - type str
 - The type of condition. One of: 
apm_app_metric,apm_jvm_metric,apm_kt_metric,browser_metric,mobile_metric - condition_
scope str applicationorinstance. Chooseapplicationfor most scenarios. If you are using the JVM plugin in New Relic, theinstancesetting allows your condition to trigger for specific app instances.- enabled bool
 - Whether the condition is enabled or not. Defaults to true.
 - gc_
metric str - A valid Garbage Collection metric e.g. 
GC/G1 Young Generation. - name str
 - The title of the condition. Must be between 1 and 64 characters, inclusive.
 - runbook_
url str - Runbook URL to display in notifications.
 - user_
defined_ strmetric  - A custom metric to be evaluated.
 - user_
defined_ strvalue_ function  One of:
average,min,max,total,sample_size,rateorpercent.NOTE: The
user_defined_value_functioncan haverateorpercentonly when thetypeismobile_metric.Warning: This resource will use the account ID linked to your API key. At the moment it is not possible to dynamically set the account ID.- violation_
close_ inttimer  - Automatically close instance-based incidents, including JVM health metric incidents, after the number of hours specified. Must be between 1 and 720 hours. Must be specified in the following two cases, to prevent drift:
- when 
type=apm_app_metricandcondition_scope=instance - when 
type=apm_jvm_metric 
 - when 
 
- entities List<String>
 - The instance IDs associated with this condition.
 - metric String
 - The metric field accepts parameters based on the 
typeset. One of these metrics based ontype: - policy
Id String - The ID of the policy where this condition should be used.
 - terms List<Property Map>
 - A list of terms for this condition. See Terms below for details.
 - type String
 - The type of condition. One of: 
apm_app_metric,apm_jvm_metric,apm_kt_metric,browser_metric,mobile_metric - condition
Scope String applicationorinstance. Chooseapplicationfor most scenarios. If you are using the JVM plugin in New Relic, theinstancesetting allows your condition to trigger for specific app instances.- enabled Boolean
 - Whether the condition is enabled or not. Defaults to true.
 - gc
Metric String - A valid Garbage Collection metric e.g. 
GC/G1 Young Generation. - name String
 - The title of the condition. Must be between 1 and 64 characters, inclusive.
 - runbook
Url String - Runbook URL to display in notifications.
 - user
Defined StringMetric  - A custom metric to be evaluated.
 - user
Defined StringValue Function  One of:
average,min,max,total,sample_size,rateorpercent.NOTE: The
user_defined_value_functioncan haverateorpercentonly when thetypeismobile_metric.Warning: This resource will use the account ID linked to your API key. At the moment it is not possible to dynamically set the account ID.- violation
Close NumberTimer  - Automatically close instance-based incidents, including JVM health metric incidents, after the number of hours specified. Must be between 1 and 720 hours. Must be specified in the following two cases, to prevent drift:
- when 
type=apm_app_metricandcondition_scope=instance - when 
type=apm_jvm_metric 
 - when 
 
Outputs
All input properties are implicitly available as output properties. Additionally, the AlertCondition resource produces the following output properties:
- Entity
Guid string - The unique entity identifier of the condition in New Relic.
 - Id string
 - The provider-assigned unique ID for this managed resource.
 
- Entity
Guid string - The unique entity identifier of the condition in New Relic.
 - Id string
 - The provider-assigned unique ID for this managed resource.
 
- entity
Guid String - The unique entity identifier of the condition in New Relic.
 - id String
 - The provider-assigned unique ID for this managed resource.
 
- entity
Guid string - The unique entity identifier of the condition in New Relic.
 - id string
 - The provider-assigned unique ID for this managed resource.
 
- entity_
guid str - The unique entity identifier of the condition in New Relic.
 - id str
 - The provider-assigned unique ID for this managed resource.
 
- entity
Guid String - The unique entity identifier of the condition in New Relic.
 - id String
 - The provider-assigned unique ID for this managed resource.
 
Look up Existing AlertCondition Resource
Get an existing AlertCondition 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?: AlertConditionState, opts?: CustomResourceOptions): AlertCondition@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        condition_scope: Optional[str] = None,
        enabled: Optional[bool] = None,
        entities: Optional[Sequence[str]] = None,
        entity_guid: Optional[str] = None,
        gc_metric: Optional[str] = None,
        metric: Optional[str] = None,
        name: Optional[str] = None,
        policy_id: Optional[str] = None,
        runbook_url: Optional[str] = None,
        terms: Optional[Sequence[AlertConditionTermArgs]] = None,
        type: Optional[str] = None,
        user_defined_metric: Optional[str] = None,
        user_defined_value_function: Optional[str] = None,
        violation_close_timer: Optional[int] = None) -> AlertConditionfunc GetAlertCondition(ctx *Context, name string, id IDInput, state *AlertConditionState, opts ...ResourceOption) (*AlertCondition, error)public static AlertCondition Get(string name, Input<string> id, AlertConditionState? state, CustomResourceOptions? opts = null)public static AlertCondition get(String name, Output<String> id, AlertConditionState 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.
 
- Condition
Scope string applicationorinstance. Chooseapplicationfor most scenarios. If you are using the JVM plugin in New Relic, theinstancesetting allows your condition to trigger for specific app instances.- Enabled bool
 - Whether the condition is enabled or not. Defaults to true.
 - Entities List<string>
 - The instance IDs associated with this condition.
 - Entity
Guid string - The unique entity identifier of the condition in New Relic.
 - Gc
Metric string - A valid Garbage Collection metric e.g. 
GC/G1 Young Generation. - Metric string
 - The metric field accepts parameters based on the 
typeset. One of these metrics based ontype: - Name string
 - The title of the condition. Must be between 1 and 64 characters, inclusive.
 - Policy
Id string - The ID of the policy where this condition should be used.
 - Runbook
Url string - Runbook URL to display in notifications.
 - Terms
List<Pulumi.
New Relic. Inputs. Alert Condition Term>  - A list of terms for this condition. See Terms below for details.
 - Type string
 - The type of condition. One of: 
apm_app_metric,apm_jvm_metric,apm_kt_metric,browser_metric,mobile_metric - User
Defined stringMetric  - A custom metric to be evaluated.
 - User
Defined stringValue Function  One of:
average,min,max,total,sample_size,rateorpercent.NOTE: The
user_defined_value_functioncan haverateorpercentonly when thetypeismobile_metric.Warning: This resource will use the account ID linked to your API key. At the moment it is not possible to dynamically set the account ID.- Violation
Close intTimer  - Automatically close instance-based incidents, including JVM health metric incidents, after the number of hours specified. Must be between 1 and 720 hours. Must be specified in the following two cases, to prevent drift:
- when 
type=apm_app_metricandcondition_scope=instance - when 
type=apm_jvm_metric 
 - when 
 
- Condition
Scope string applicationorinstance. Chooseapplicationfor most scenarios. If you are using the JVM plugin in New Relic, theinstancesetting allows your condition to trigger for specific app instances.- Enabled bool
 - Whether the condition is enabled or not. Defaults to true.
 - Entities []string
 - The instance IDs associated with this condition.
 - Entity
Guid string - The unique entity identifier of the condition in New Relic.
 - Gc
Metric string - A valid Garbage Collection metric e.g. 
GC/G1 Young Generation. - Metric string
 - The metric field accepts parameters based on the 
typeset. One of these metrics based ontype: - Name string
 - The title of the condition. Must be between 1 and 64 characters, inclusive.
 - Policy
Id string - The ID of the policy where this condition should be used.
 - Runbook
Url string - Runbook URL to display in notifications.
 - Terms
[]Alert
Condition Term Args  - A list of terms for this condition. See Terms below for details.
 - Type string
 - The type of condition. One of: 
apm_app_metric,apm_jvm_metric,apm_kt_metric,browser_metric,mobile_metric - User
Defined stringMetric  - A custom metric to be evaluated.
 - User
Defined stringValue Function  One of:
average,min,max,total,sample_size,rateorpercent.NOTE: The
user_defined_value_functioncan haverateorpercentonly when thetypeismobile_metric.Warning: This resource will use the account ID linked to your API key. At the moment it is not possible to dynamically set the account ID.- Violation
Close intTimer  - Automatically close instance-based incidents, including JVM health metric incidents, after the number of hours specified. Must be between 1 and 720 hours. Must be specified in the following two cases, to prevent drift:
- when 
type=apm_app_metricandcondition_scope=instance - when 
type=apm_jvm_metric 
 - when 
 
- condition
Scope String applicationorinstance. Chooseapplicationfor most scenarios. If you are using the JVM plugin in New Relic, theinstancesetting allows your condition to trigger for specific app instances.- enabled Boolean
 - Whether the condition is enabled or not. Defaults to true.
 - entities List<String>
 - The instance IDs associated with this condition.
 - entity
Guid String - The unique entity identifier of the condition in New Relic.
 - gc
Metric String - A valid Garbage Collection metric e.g. 
GC/G1 Young Generation. - metric String
 - The metric field accepts parameters based on the 
typeset. One of these metrics based ontype: - name String
 - The title of the condition. Must be between 1 and 64 characters, inclusive.
 - policy
Id String - The ID of the policy where this condition should be used.
 - runbook
Url String - Runbook URL to display in notifications.
 - terms
List<Alert
Condition Term>  - A list of terms for this condition. See Terms below for details.
 - type String
 - The type of condition. One of: 
apm_app_metric,apm_jvm_metric,apm_kt_metric,browser_metric,mobile_metric - user
Defined StringMetric  - A custom metric to be evaluated.
 - user
Defined StringValue Function  One of:
average,min,max,total,sample_size,rateorpercent.NOTE: The
user_defined_value_functioncan haverateorpercentonly when thetypeismobile_metric.Warning: This resource will use the account ID linked to your API key. At the moment it is not possible to dynamically set the account ID.- violation
Close IntegerTimer  - Automatically close instance-based incidents, including JVM health metric incidents, after the number of hours specified. Must be between 1 and 720 hours. Must be specified in the following two cases, to prevent drift:
- when 
type=apm_app_metricandcondition_scope=instance - when 
type=apm_jvm_metric 
 - when 
 
- condition
Scope string applicationorinstance. Chooseapplicationfor most scenarios. If you are using the JVM plugin in New Relic, theinstancesetting allows your condition to trigger for specific app instances.- enabled boolean
 - Whether the condition is enabled or not. Defaults to true.
 - entities string[]
 - The instance IDs associated with this condition.
 - entity
Guid string - The unique entity identifier of the condition in New Relic.
 - gc
Metric string - A valid Garbage Collection metric e.g. 
GC/G1 Young Generation. - metric string
 - The metric field accepts parameters based on the 
typeset. One of these metrics based ontype: - name string
 - The title of the condition. Must be between 1 and 64 characters, inclusive.
 - policy
Id string - The ID of the policy where this condition should be used.
 - runbook
Url string - Runbook URL to display in notifications.
 - terms
Alert
Condition Term[]  - A list of terms for this condition. See Terms below for details.
 - type string
 - The type of condition. One of: 
apm_app_metric,apm_jvm_metric,apm_kt_metric,browser_metric,mobile_metric - user
Defined stringMetric  - A custom metric to be evaluated.
 - user
Defined stringValue Function  One of:
average,min,max,total,sample_size,rateorpercent.NOTE: The
user_defined_value_functioncan haverateorpercentonly when thetypeismobile_metric.Warning: This resource will use the account ID linked to your API key. At the moment it is not possible to dynamically set the account ID.- violation
Close numberTimer  - Automatically close instance-based incidents, including JVM health metric incidents, after the number of hours specified. Must be between 1 and 720 hours. Must be specified in the following two cases, to prevent drift:
- when 
type=apm_app_metricandcondition_scope=instance - when 
type=apm_jvm_metric 
 - when 
 
- condition_
scope str applicationorinstance. Chooseapplicationfor most scenarios. If you are using the JVM plugin in New Relic, theinstancesetting allows your condition to trigger for specific app instances.- enabled bool
 - Whether the condition is enabled or not. Defaults to true.
 - entities Sequence[str]
 - The instance IDs associated with this condition.
 - entity_
guid str - The unique entity identifier of the condition in New Relic.
 - gc_
metric str - A valid Garbage Collection metric e.g. 
GC/G1 Young Generation. - metric str
 - The metric field accepts parameters based on the 
typeset. One of these metrics based ontype: - name str
 - The title of the condition. Must be between 1 and 64 characters, inclusive.
 - policy_
id str - The ID of the policy where this condition should be used.
 - runbook_
url str - Runbook URL to display in notifications.
 - terms
Sequence[Alert
Condition Term Args]  - A list of terms for this condition. See Terms below for details.
 - type str
 - The type of condition. One of: 
apm_app_metric,apm_jvm_metric,apm_kt_metric,browser_metric,mobile_metric - user_
defined_ strmetric  - A custom metric to be evaluated.
 - user_
defined_ strvalue_ function  One of:
average,min,max,total,sample_size,rateorpercent.NOTE: The
user_defined_value_functioncan haverateorpercentonly when thetypeismobile_metric.Warning: This resource will use the account ID linked to your API key. At the moment it is not possible to dynamically set the account ID.- violation_
close_ inttimer  - Automatically close instance-based incidents, including JVM health metric incidents, after the number of hours specified. Must be between 1 and 720 hours. Must be specified in the following two cases, to prevent drift:
- when 
type=apm_app_metricandcondition_scope=instance - when 
type=apm_jvm_metric 
 - when 
 
- condition
Scope String applicationorinstance. Chooseapplicationfor most scenarios. If you are using the JVM plugin in New Relic, theinstancesetting allows your condition to trigger for specific app instances.- enabled Boolean
 - Whether the condition is enabled or not. Defaults to true.
 - entities List<String>
 - The instance IDs associated with this condition.
 - entity
Guid String - The unique entity identifier of the condition in New Relic.
 - gc
Metric String - A valid Garbage Collection metric e.g. 
GC/G1 Young Generation. - metric String
 - The metric field accepts parameters based on the 
typeset. One of these metrics based ontype: - name String
 - The title of the condition. Must be between 1 and 64 characters, inclusive.
 - policy
Id String - The ID of the policy where this condition should be used.
 - runbook
Url String - Runbook URL to display in notifications.
 - terms List<Property Map>
 - A list of terms for this condition. See Terms below for details.
 - type String
 - The type of condition. One of: 
apm_app_metric,apm_jvm_metric,apm_kt_metric,browser_metric,mobile_metric - user
Defined StringMetric  - A custom metric to be evaluated.
 - user
Defined StringValue Function  One of:
average,min,max,total,sample_size,rateorpercent.NOTE: The
user_defined_value_functioncan haverateorpercentonly when thetypeismobile_metric.Warning: This resource will use the account ID linked to your API key. At the moment it is not possible to dynamically set the account ID.- violation
Close NumberTimer  - Automatically close instance-based incidents, including JVM health metric incidents, after the number of hours specified. Must be between 1 and 720 hours. Must be specified in the following two cases, to prevent drift:
- when 
type=apm_app_metricandcondition_scope=instance - when 
type=apm_jvm_metric 
 - when 
 
Supporting Types
AlertConditionTerm, AlertConditionTermArgs      
- Duration int
 - In minutes, must be in the range of 5 to 120, inclusive.
 - Threshold double
 - Must be 0 or greater.
 - Time
Function string - One of (all, any).
 - Operator string
 - One of (above, below, equal). Defaults to equal.
 - Priority string
 - One of (critical, warning). Defaults to critical.
 
- Duration int
 - In minutes, must be in the range of 5 to 120, inclusive.
 - Threshold float64
 - Must be 0 or greater.
 - Time
Function string - One of (all, any).
 - Operator string
 - One of (above, below, equal). Defaults to equal.
 - Priority string
 - One of (critical, warning). Defaults to critical.
 
- duration Integer
 - In minutes, must be in the range of 5 to 120, inclusive.
 - threshold Double
 - Must be 0 or greater.
 - time
Function String - One of (all, any).
 - operator String
 - One of (above, below, equal). Defaults to equal.
 - priority String
 - One of (critical, warning). Defaults to critical.
 
- duration number
 - In minutes, must be in the range of 5 to 120, inclusive.
 - threshold number
 - Must be 0 or greater.
 - time
Function string - One of (all, any).
 - operator string
 - One of (above, below, equal). Defaults to equal.
 - priority string
 - One of (critical, warning). Defaults to critical.
 
- duration int
 - In minutes, must be in the range of 5 to 120, inclusive.
 - threshold float
 - Must be 0 or greater.
 - time_
function str - One of (all, any).
 - operator str
 - One of (above, below, equal). Defaults to equal.
 - priority str
 - One of (critical, warning). Defaults to critical.
 
- duration Number
 - In minutes, must be in the range of 5 to 120, inclusive.
 - threshold Number
 - Must be 0 or greater.
 - time
Function String - One of (all, any).
 - operator String
 - One of (above, below, equal). Defaults to equal.
 - priority String
 - One of (critical, warning). Defaults to critical.
 
Import
Alert conditions can be imported using notation alert_policy_id:alert_condition_id, e.g.
$ pulumi import newrelic:index/alertCondition:AlertCondition main 123456:6789012345
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
 - New Relic pulumi/pulumi-newrelic
 - License
 - Apache-2.0
 - Notes
 - This Pulumi package is based on the 
newrelicTerraform Provider.