pulumi-newrelic 5.22.0__py3-none-any.whl → 5.58.0a1763707205__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pulumi-newrelic might be problematic. Click here for more details.

Files changed (92) hide show
  1. pulumi_newrelic/__init__.py +28 -1
  2. pulumi_newrelic/_inputs.py +10385 -2976
  3. pulumi_newrelic/_utilities.py +50 -10
  4. pulumi_newrelic/account_management.py +48 -42
  5. pulumi_newrelic/alert_channel.py +165 -175
  6. pulumi_newrelic/alert_condition.py +307 -319
  7. pulumi_newrelic/alert_muting_rule.py +193 -140
  8. pulumi_newrelic/alert_policy.py +121 -117
  9. pulumi_newrelic/alert_policy_channel.py +89 -79
  10. pulumi_newrelic/api_access_key.py +195 -193
  11. pulumi_newrelic/browser_application.py +120 -114
  12. pulumi_newrelic/cloud/__init__.py +3 -1
  13. pulumi_newrelic/cloud/_inputs.py +4267 -2714
  14. pulumi_newrelic/cloud/aws_govcloud_integrations.py +206 -196
  15. pulumi_newrelic/cloud/aws_govcloud_link_account.py +143 -228
  16. pulumi_newrelic/cloud/aws_integrations.py +510 -1490
  17. pulumi_newrelic/cloud/aws_link_account.py +80 -76
  18. pulumi_newrelic/cloud/azure_integrations.py +673 -587
  19. pulumi_newrelic/cloud/azure_link_account.py +121 -117
  20. pulumi_newrelic/cloud/gcp_integrations.py +428 -408
  21. pulumi_newrelic/cloud/gcp_link_account.py +65 -61
  22. pulumi_newrelic/cloud/oci_link_account.py +926 -0
  23. pulumi_newrelic/cloud/outputs.py +1678 -2321
  24. pulumi_newrelic/config/__init__.py +2 -1
  25. pulumi_newrelic/config/__init__.pyi +8 -3
  26. pulumi_newrelic/config/vars.py +22 -17
  27. pulumi_newrelic/data_partition_rule.py +119 -117
  28. pulumi_newrelic/entity_tags.py +111 -53
  29. pulumi_newrelic/events_to_metrics_rule.py +106 -102
  30. pulumi_newrelic/get_account.py +41 -33
  31. pulumi_newrelic/get_alert_channel.py +73 -28
  32. pulumi_newrelic/get_alert_policy.py +82 -33
  33. pulumi_newrelic/get_application.py +51 -43
  34. pulumi_newrelic/get_authentication_domain.py +27 -23
  35. pulumi_newrelic/get_cloud_account.py +43 -35
  36. pulumi_newrelic/get_entity.py +126 -183
  37. pulumi_newrelic/get_group.py +76 -31
  38. pulumi_newrelic/get_key_transaction.py +117 -42
  39. pulumi_newrelic/get_notification_destination.py +75 -38
  40. pulumi_newrelic/get_obfuscation_expression.py +47 -39
  41. pulumi_newrelic/get_service_level_alert_helper.py +189 -171
  42. pulumi_newrelic/get_test_grok_pattern.py +47 -36
  43. pulumi_newrelic/get_user.py +39 -31
  44. pulumi_newrelic/group.py +59 -199
  45. pulumi_newrelic/infra_alert_condition.py +399 -405
  46. pulumi_newrelic/insights/__init__.py +2 -1
  47. pulumi_newrelic/insights/_inputs.py +71 -28
  48. pulumi_newrelic/insights/event.py +54 -52
  49. pulumi_newrelic/insights/outputs.py +28 -23
  50. pulumi_newrelic/key_transaction.py +465 -0
  51. pulumi_newrelic/log_parsing_rule.py +159 -157
  52. pulumi_newrelic/monitor_downtime.py +311 -331
  53. pulumi_newrelic/notification_channel.py +534 -464
  54. pulumi_newrelic/notification_destination.py +238 -141
  55. pulumi_newrelic/nrql_alert_condition.py +820 -614
  56. pulumi_newrelic/nrql_drop_rule.py +113 -151
  57. pulumi_newrelic/obfuscation_expression.py +80 -76
  58. pulumi_newrelic/obfuscation_rule.py +115 -109
  59. pulumi_newrelic/one_dashboard.py +110 -104
  60. pulumi_newrelic/one_dashboard_json.py +69 -63
  61. pulumi_newrelic/one_dashboard_raw.py +212 -206
  62. pulumi_newrelic/outputs.py +4936 -2234
  63. pulumi_newrelic/pipeline_cloud_rule.py +335 -0
  64. pulumi_newrelic/plugins/__init__.py +2 -1
  65. pulumi_newrelic/plugins/_inputs.py +519 -89
  66. pulumi_newrelic/plugins/application_settings.py +463 -187
  67. pulumi_newrelic/plugins/outputs.py +336 -74
  68. pulumi_newrelic/plugins/workload.py +313 -189
  69. pulumi_newrelic/provider.py +156 -142
  70. pulumi_newrelic/pulumi-plugin.json +2 -1
  71. pulumi_newrelic/service_level.py +263 -263
  72. pulumi_newrelic/synthetics/__init__.py +2 -1
  73. pulumi_newrelic/synthetics/_inputs.py +265 -108
  74. pulumi_newrelic/synthetics/alert_condition.py +170 -180
  75. pulumi_newrelic/synthetics/broken_links_monitor.py +297 -249
  76. pulumi_newrelic/synthetics/cert_check_monitor.py +306 -258
  77. pulumi_newrelic/synthetics/get_private_location.py +51 -47
  78. pulumi_newrelic/synthetics/get_secure_credential.py +39 -31
  79. pulumi_newrelic/synthetics/monitor.py +658 -460
  80. pulumi_newrelic/synthetics/multi_location_alert_condition.py +211 -205
  81. pulumi_newrelic/synthetics/outputs.py +92 -87
  82. pulumi_newrelic/synthetics/private_location.py +118 -112
  83. pulumi_newrelic/synthetics/script_monitor.py +613 -373
  84. pulumi_newrelic/synthetics/secure_credential.py +97 -95
  85. pulumi_newrelic/synthetics/step_monitor.py +445 -275
  86. pulumi_newrelic/user.py +84 -80
  87. pulumi_newrelic/workflow.py +336 -322
  88. {pulumi_newrelic-5.22.0.dist-info → pulumi_newrelic-5.58.0a1763707205.dist-info}/METADATA +7 -6
  89. pulumi_newrelic-5.58.0a1763707205.dist-info/RECORD +92 -0
  90. {pulumi_newrelic-5.22.0.dist-info → pulumi_newrelic-5.58.0a1763707205.dist-info}/WHEEL +1 -1
  91. pulumi_newrelic-5.22.0.dist-info/RECORD +0 -89
  92. {pulumi_newrelic-5.22.0.dist-info → pulumi_newrelic-5.58.0a1763707205.dist-info}/top_level.txt +0 -0
@@ -1,12 +1,17 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import copy
5
+ import builtins as _builtins
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -17,19 +22,19 @@ __all__ = ['ServiceLevelArgs', 'ServiceLevel']
17
22
  class ServiceLevelArgs:
18
23
  def __init__(__self__, *,
19
24
  events: pulumi.Input['ServiceLevelEventsArgs'],
20
- guid: pulumi.Input[str],
25
+ guid: pulumi.Input[_builtins.str],
21
26
  objective: pulumi.Input['ServiceLevelObjectiveArgs'],
22
- description: Optional[pulumi.Input[str]] = None,
23
- name: Optional[pulumi.Input[str]] = None):
27
+ description: Optional[pulumi.Input[_builtins.str]] = None,
28
+ name: Optional[pulumi.Input[_builtins.str]] = None):
24
29
  """
25
30
  The set of arguments for constructing a ServiceLevel resource.
26
31
  :param pulumi.Input['ServiceLevelEventsArgs'] events: The events that define the NRDB data for the SLI/SLO calculations.
27
32
  See Events below for details.
28
- :param pulumi.Input[str] guid: The GUID of the entity (e.g, APM Service, Browser application, Workload, etc.) that you want to relate this SLI to. Note that changing the GUID will force a new resource.
33
+ :param pulumi.Input[_builtins.str] guid: The GUID of the entity (e.g, APM Service, Browser application, Workload, etc.) that you want to relate this SLI to. Note that changing the GUID will force a new resource.
29
34
  :param pulumi.Input['ServiceLevelObjectiveArgs'] objective: The objective of the SLI, only one can be defined.
30
35
  See Objective below for details.
31
- :param pulumi.Input[str] description: The description of the SLI.
32
- :param pulumi.Input[str] name: A short name for the SLI that will help anyone understand what it is about.
36
+ :param pulumi.Input[_builtins.str] description: The description of the SLI.
37
+ :param pulumi.Input[_builtins.str] name: A short name for the SLI that will help anyone understand what it is about.
33
38
  """
34
39
  pulumi.set(__self__, "events", events)
35
40
  pulumi.set(__self__, "guid", guid)
@@ -39,7 +44,7 @@ class ServiceLevelArgs:
39
44
  if name is not None:
40
45
  pulumi.set(__self__, "name", name)
41
46
 
42
- @property
47
+ @_builtins.property
43
48
  @pulumi.getter
44
49
  def events(self) -> pulumi.Input['ServiceLevelEventsArgs']:
45
50
  """
@@ -52,19 +57,19 @@ class ServiceLevelArgs:
52
57
  def events(self, value: pulumi.Input['ServiceLevelEventsArgs']):
53
58
  pulumi.set(self, "events", value)
54
59
 
55
- @property
60
+ @_builtins.property
56
61
  @pulumi.getter
57
- def guid(self) -> pulumi.Input[str]:
62
+ def guid(self) -> pulumi.Input[_builtins.str]:
58
63
  """
59
64
  The GUID of the entity (e.g, APM Service, Browser application, Workload, etc.) that you want to relate this SLI to. Note that changing the GUID will force a new resource.
60
65
  """
61
66
  return pulumi.get(self, "guid")
62
67
 
63
68
  @guid.setter
64
- def guid(self, value: pulumi.Input[str]):
69
+ def guid(self, value: pulumi.Input[_builtins.str]):
65
70
  pulumi.set(self, "guid", value)
66
71
 
67
- @property
72
+ @_builtins.property
68
73
  @pulumi.getter
69
74
  def objective(self) -> pulumi.Input['ServiceLevelObjectiveArgs']:
70
75
  """
@@ -77,52 +82,52 @@ class ServiceLevelArgs:
77
82
  def objective(self, value: pulumi.Input['ServiceLevelObjectiveArgs']):
78
83
  pulumi.set(self, "objective", value)
79
84
 
80
- @property
85
+ @_builtins.property
81
86
  @pulumi.getter
82
- def description(self) -> Optional[pulumi.Input[str]]:
87
+ def description(self) -> Optional[pulumi.Input[_builtins.str]]:
83
88
  """
84
89
  The description of the SLI.
85
90
  """
86
91
  return pulumi.get(self, "description")
87
92
 
88
93
  @description.setter
89
- def description(self, value: Optional[pulumi.Input[str]]):
94
+ def description(self, value: Optional[pulumi.Input[_builtins.str]]):
90
95
  pulumi.set(self, "description", value)
91
96
 
92
- @property
97
+ @_builtins.property
93
98
  @pulumi.getter
94
- def name(self) -> Optional[pulumi.Input[str]]:
99
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
95
100
  """
96
101
  A short name for the SLI that will help anyone understand what it is about.
97
102
  """
98
103
  return pulumi.get(self, "name")
99
104
 
100
105
  @name.setter
101
- def name(self, value: Optional[pulumi.Input[str]]):
106
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
102
107
  pulumi.set(self, "name", value)
103
108
 
104
109
 
105
110
  @pulumi.input_type
106
111
  class _ServiceLevelState:
107
112
  def __init__(__self__, *,
108
- description: Optional[pulumi.Input[str]] = None,
113
+ description: Optional[pulumi.Input[_builtins.str]] = None,
109
114
  events: Optional[pulumi.Input['ServiceLevelEventsArgs']] = None,
110
- guid: Optional[pulumi.Input[str]] = None,
111
- name: Optional[pulumi.Input[str]] = None,
115
+ guid: Optional[pulumi.Input[_builtins.str]] = None,
116
+ name: Optional[pulumi.Input[_builtins.str]] = None,
112
117
  objective: Optional[pulumi.Input['ServiceLevelObjectiveArgs']] = None,
113
- sli_guid: Optional[pulumi.Input[str]] = None,
114
- sli_id: Optional[pulumi.Input[str]] = None):
118
+ sli_guid: Optional[pulumi.Input[_builtins.str]] = None,
119
+ sli_id: Optional[pulumi.Input[_builtins.str]] = None):
115
120
  """
116
121
  Input properties used for looking up and filtering ServiceLevel resources.
117
- :param pulumi.Input[str] description: The description of the SLI.
122
+ :param pulumi.Input[_builtins.str] description: The description of the SLI.
118
123
  :param pulumi.Input['ServiceLevelEventsArgs'] events: The events that define the NRDB data for the SLI/SLO calculations.
119
124
  See Events below for details.
120
- :param pulumi.Input[str] guid: The GUID of the entity (e.g, APM Service, Browser application, Workload, etc.) that you want to relate this SLI to. Note that changing the GUID will force a new resource.
121
- :param pulumi.Input[str] name: A short name for the SLI that will help anyone understand what it is about.
125
+ :param pulumi.Input[_builtins.str] guid: The GUID of the entity (e.g, APM Service, Browser application, Workload, etc.) that you want to relate this SLI to. Note that changing the GUID will force a new resource.
126
+ :param pulumi.Input[_builtins.str] name: A short name for the SLI that will help anyone understand what it is about.
122
127
  :param pulumi.Input['ServiceLevelObjectiveArgs'] objective: The objective of the SLI, only one can be defined.
123
128
  See Objective below for details.
124
- :param pulumi.Input[str] sli_guid: The unique entity identifier of the Service Level Indicator in New Relic.
125
- :param pulumi.Input[str] sli_id: The unique entity identifier of the Service Level Indicator.
129
+ :param pulumi.Input[_builtins.str] sli_guid: The unique entity identifier of the Service Level Indicator in New Relic.
130
+ :param pulumi.Input[_builtins.str] sli_id: The unique entity identifier of the Service Level Indicator.
126
131
  """
127
132
  if description is not None:
128
133
  pulumi.set(__self__, "description", description)
@@ -139,19 +144,19 @@ class _ServiceLevelState:
139
144
  if sli_id is not None:
140
145
  pulumi.set(__self__, "sli_id", sli_id)
141
146
 
142
- @property
147
+ @_builtins.property
143
148
  @pulumi.getter
144
- def description(self) -> Optional[pulumi.Input[str]]:
149
+ def description(self) -> Optional[pulumi.Input[_builtins.str]]:
145
150
  """
146
151
  The description of the SLI.
147
152
  """
148
153
  return pulumi.get(self, "description")
149
154
 
150
155
  @description.setter
151
- def description(self, value: Optional[pulumi.Input[str]]):
156
+ def description(self, value: Optional[pulumi.Input[_builtins.str]]):
152
157
  pulumi.set(self, "description", value)
153
158
 
154
- @property
159
+ @_builtins.property
155
160
  @pulumi.getter
156
161
  def events(self) -> Optional[pulumi.Input['ServiceLevelEventsArgs']]:
157
162
  """
@@ -164,31 +169,31 @@ class _ServiceLevelState:
164
169
  def events(self, value: Optional[pulumi.Input['ServiceLevelEventsArgs']]):
165
170
  pulumi.set(self, "events", value)
166
171
 
167
- @property
172
+ @_builtins.property
168
173
  @pulumi.getter
169
- def guid(self) -> Optional[pulumi.Input[str]]:
174
+ def guid(self) -> Optional[pulumi.Input[_builtins.str]]:
170
175
  """
171
176
  The GUID of the entity (e.g, APM Service, Browser application, Workload, etc.) that you want to relate this SLI to. Note that changing the GUID will force a new resource.
172
177
  """
173
178
  return pulumi.get(self, "guid")
174
179
 
175
180
  @guid.setter
176
- def guid(self, value: Optional[pulumi.Input[str]]):
181
+ def guid(self, value: Optional[pulumi.Input[_builtins.str]]):
177
182
  pulumi.set(self, "guid", value)
178
183
 
179
- @property
184
+ @_builtins.property
180
185
  @pulumi.getter
181
- def name(self) -> Optional[pulumi.Input[str]]:
186
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
182
187
  """
183
188
  A short name for the SLI that will help anyone understand what it is about.
184
189
  """
185
190
  return pulumi.get(self, "name")
186
191
 
187
192
  @name.setter
188
- def name(self, value: Optional[pulumi.Input[str]]):
193
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
189
194
  pulumi.set(self, "name", value)
190
195
 
191
- @property
196
+ @_builtins.property
192
197
  @pulumi.getter
193
198
  def objective(self) -> Optional[pulumi.Input['ServiceLevelObjectiveArgs']]:
194
199
  """
@@ -201,41 +206,42 @@ class _ServiceLevelState:
201
206
  def objective(self, value: Optional[pulumi.Input['ServiceLevelObjectiveArgs']]):
202
207
  pulumi.set(self, "objective", value)
203
208
 
204
- @property
209
+ @_builtins.property
205
210
  @pulumi.getter(name="sliGuid")
206
- def sli_guid(self) -> Optional[pulumi.Input[str]]:
211
+ def sli_guid(self) -> Optional[pulumi.Input[_builtins.str]]:
207
212
  """
208
213
  The unique entity identifier of the Service Level Indicator in New Relic.
209
214
  """
210
215
  return pulumi.get(self, "sli_guid")
211
216
 
212
217
  @sli_guid.setter
213
- def sli_guid(self, value: Optional[pulumi.Input[str]]):
218
+ def sli_guid(self, value: Optional[pulumi.Input[_builtins.str]]):
214
219
  pulumi.set(self, "sli_guid", value)
215
220
 
216
- @property
221
+ @_builtins.property
217
222
  @pulumi.getter(name="sliId")
218
- def sli_id(self) -> Optional[pulumi.Input[str]]:
223
+ def sli_id(self) -> Optional[pulumi.Input[_builtins.str]]:
219
224
  """
220
225
  The unique entity identifier of the Service Level Indicator.
221
226
  """
222
227
  return pulumi.get(self, "sli_id")
223
228
 
224
229
  @sli_id.setter
225
- def sli_id(self, value: Optional[pulumi.Input[str]]):
230
+ def sli_id(self, value: Optional[pulumi.Input[_builtins.str]]):
226
231
  pulumi.set(self, "sli_id", value)
227
232
 
228
233
 
234
+ @pulumi.type_token("newrelic:index/serviceLevel:ServiceLevel")
229
235
  class ServiceLevel(pulumi.CustomResource):
230
236
  @overload
231
237
  def __init__(__self__,
232
238
  resource_name: str,
233
239
  opts: Optional[pulumi.ResourceOptions] = None,
234
- description: Optional[pulumi.Input[str]] = None,
235
- events: Optional[pulumi.Input[pulumi.InputType['ServiceLevelEventsArgs']]] = None,
236
- guid: Optional[pulumi.Input[str]] = None,
237
- name: Optional[pulumi.Input[str]] = None,
238
- objective: Optional[pulumi.Input[pulumi.InputType['ServiceLevelObjectiveArgs']]] = None,
240
+ description: Optional[pulumi.Input[_builtins.str]] = None,
241
+ events: Optional[pulumi.Input[Union['ServiceLevelEventsArgs', 'ServiceLevelEventsArgsDict']]] = None,
242
+ guid: Optional[pulumi.Input[_builtins.str]] = None,
243
+ name: Optional[pulumi.Input[_builtins.str]] = None,
244
+ objective: Optional[pulumi.Input[Union['ServiceLevelObjectiveArgs', 'ServiceLevelObjectiveArgsDict']]] = None,
239
245
  __props__=None):
240
246
  """
241
247
  Use this resource to create, update, and delete New Relic Service Level Indicators and Objectives.
@@ -250,128 +256,125 @@ class ServiceLevel(pulumi.CustomResource):
250
256
 
251
257
  ## Example Usage
252
258
 
253
- <!--Start PulumiCodeChooser -->
254
259
  ```python
255
260
  import pulumi
256
261
  import pulumi_newrelic as newrelic
257
262
 
258
263
  foo = newrelic.ServiceLevel("foo",
259
- description="Proportion of requests that are served faster than a threshold.",
260
- events=newrelic.ServiceLevelEventsArgs(
261
- account_id=12345678,
262
- good_events=newrelic.ServiceLevelEventsGoodEventsArgs(
263
- from_="Transaction",
264
- where="appName = 'Example application' AND (transactionType= 'Web') AND duration < 0.1",
265
- ),
266
- valid_events=newrelic.ServiceLevelEventsValidEventsArgs(
267
- from_="Transaction",
268
- where="appName = 'Example application' AND (transactionType='Web')",
269
- ),
270
- ),
271
264
  guid="MXxBUE18QVBQTElDQVRJT058MQ",
272
- objective=newrelic.ServiceLevelObjectiveArgs(
273
- target=99,
274
- time_window=newrelic.ServiceLevelObjectiveTimeWindowArgs(
275
- rolling=newrelic.ServiceLevelObjectiveTimeWindowRollingArgs(
276
- count=7,
277
- unit="DAY",
278
- ),
279
- ),
280
- ))
265
+ name="Latency",
266
+ description="Proportion of requests that are served faster than a threshold.",
267
+ events={
268
+ "account_id": "12345678",
269
+ "valid_events": {
270
+ "from_": "Transaction",
271
+ "where": "appName = 'Example application' AND (transactionType='Web')",
272
+ },
273
+ "good_events": {
274
+ "from_": "Transaction",
275
+ "where": "appName = 'Example application' AND (transactionType= 'Web') AND duration < 0.1",
276
+ },
277
+ },
278
+ objective={
279
+ "target": 99,
280
+ "time_window": {
281
+ "rolling": {
282
+ "count": 7,
283
+ "unit": "DAY",
284
+ },
285
+ },
286
+ })
281
287
  ```
282
- <!--End PulumiCodeChooser -->
283
288
 
284
289
  ## Additional Example
285
290
 
286
291
  Service level with tags:
287
292
 
288
- <!--Start PulumiCodeChooser -->
289
293
  ```python
290
294
  import pulumi
291
295
  import pulumi_newrelic as newrelic
292
296
 
293
- my_synthetic_monitor_service_level = newrelic.ServiceLevel("mySyntheticMonitorServiceLevel",
297
+ my_synthetic_monitor_service_level = newrelic.ServiceLevel("my_synthetic_monitor_service_level",
294
298
  guid="MXxBUE18QVBQTElDQVRJT058MQ",
299
+ name="My synthethic monitor - Success",
295
300
  description="Proportion of successful synthetic checks.",
296
- events=newrelic.ServiceLevelEventsArgs(
297
- account_id=12345678,
298
- valid_events=newrelic.ServiceLevelEventsValidEventsArgs(
299
- from_="SyntheticCheck",
300
- where="entityGuid = 'MXxBUE18QVBQTElDQVRJT058MQ'",
301
- ),
302
- good_events=newrelic.ServiceLevelEventsGoodEventsArgs(
303
- from_="SyntheticCheck",
304
- where="entityGuid = 'MXxBUE18QVBQTElDQVRJT058MQ' AND result='SUCCESS'",
305
- ),
306
- ),
307
- objective=newrelic.ServiceLevelObjectiveArgs(
308
- target=99,
309
- time_window=newrelic.ServiceLevelObjectiveTimeWindowArgs(
310
- rolling=newrelic.ServiceLevelObjectiveTimeWindowRollingArgs(
311
- count=7,
312
- unit="DAY",
313
- ),
314
- ),
315
- ))
316
- my_synthetic_monitor_service_level_tags = newrelic.EntityTags("mySyntheticMonitorServiceLevelTags",
301
+ events={
302
+ "account_id": "12345678",
303
+ "valid_events": {
304
+ "from_": "SyntheticCheck",
305
+ "where": "entityGuid = 'MXxBUE18QVBQTElDQVRJT058MQ'",
306
+ },
307
+ "good_events": {
308
+ "from_": "SyntheticCheck",
309
+ "where": "entityGuid = 'MXxBUE18QVBQTElDQVRJT058MQ' AND result='SUCCESS'",
310
+ },
311
+ },
312
+ objective={
313
+ "target": 99,
314
+ "time_window": {
315
+ "rolling": {
316
+ "count": 7,
317
+ "unit": "DAY",
318
+ },
319
+ },
320
+ })
321
+ my_synthetic_monitor_service_level_tags = newrelic.EntityTags("my_synthetic_monitor_service_level_tags",
317
322
  guid=my_synthetic_monitor_service_level.sli_guid,
318
323
  tags=[
319
- newrelic.EntityTagsTagArgs(
320
- key="user_journey",
321
- values=[
324
+ {
325
+ "key": "user_journey",
326
+ "values": [
322
327
  "authentication",
323
328
  "sso",
324
329
  ],
325
- ),
326
- newrelic.EntityTagsTagArgs(
327
- key="owner",
328
- values=["identityTeam"],
329
- ),
330
+ },
331
+ {
332
+ "key": "owner",
333
+ "values": ["identityTeam"],
334
+ },
330
335
  ])
331
336
  ```
332
- <!--End PulumiCodeChooser -->
333
337
 
334
338
  Using `select` for events
335
339
 
336
- <!--Start PulumiCodeChooser -->
337
340
  ```python
338
341
  import pulumi
339
342
  import pulumi_newrelic as newrelic
340
343
 
341
- my_synthetic_monitor_duration_service_level = newrelic.ServiceLevel("mySyntheticMonitorDurationServiceLevel",
342
- description="Monitor created to test concurrent request from terraform",
343
- events=newrelic.ServiceLevelEventsArgs(
344
- account_id=313870,
345
- good_events=newrelic.ServiceLevelEventsGoodEventsArgs(
346
- from_="Metric",
347
- select=newrelic.ServiceLevelEventsGoodEventsSelectArgs(
348
- attribute="`query.wallClockTime.negative.distribution`",
349
- function="GET_CDF_COUNT",
350
- threshold=7,
351
- ),
352
- where="metricName = 'query.wallClockTime.negative.distribution'",
353
- ),
354
- valid_events=newrelic.ServiceLevelEventsValidEventsArgs(
355
- from_="Metric",
356
- select=newrelic.ServiceLevelEventsValidEventsSelectArgs(
357
- attribute="`query.wallClockTime.negative.distribution`",
358
- function="GET_FIELD",
359
- ),
360
- where="metricName = 'query.wallClockTime.negative.distribution'",
361
- ),
362
- ),
344
+ my_synthetic_monitor_duration_service_level = newrelic.ServiceLevel("my_synthetic_monitor_duration_service_level",
363
345
  guid="MXxBUE18QVBQTElDQVRJT058MQ",
364
- objective=newrelic.ServiceLevelObjectiveArgs(
365
- target=49,
366
- time_window=newrelic.ServiceLevelObjectiveTimeWindowArgs(
367
- rolling=newrelic.ServiceLevelObjectiveTimeWindowRollingArgs(
368
- count=7,
369
- unit="DAY",
370
- ),
371
- ),
372
- ))
346
+ name="Duration distribution is under 7",
347
+ description="Monitor created to test concurrent request from terraform",
348
+ events={
349
+ "account_id": "313870",
350
+ "valid_events": {
351
+ "from_": "Metric",
352
+ "select": {
353
+ "attribute": "`query.wallClockTime.negative.distribution`",
354
+ "function": "GET_FIELD",
355
+ },
356
+ "where": "metricName = 'query.wallClockTime.negative.distribution'",
357
+ },
358
+ "good_events": {
359
+ "from_": "Metric",
360
+ "select": {
361
+ "attribute": "`query.wallClockTime.negative.distribution`",
362
+ "function": "GET_CDF_COUNT",
363
+ "threshold": 7,
364
+ },
365
+ "where": "metricName = 'query.wallClockTime.negative.distribution'",
366
+ },
367
+ },
368
+ objective={
369
+ "target": 49,
370
+ "time_window": {
371
+ "rolling": {
372
+ "count": 7,
373
+ "unit": "DAY",
374
+ },
375
+ },
376
+ })
373
377
  ```
374
- <!--End PulumiCodeChooser -->
375
378
 
376
379
  For up-to-date documentation about the tagging resource, please check EntityTags
377
380
 
@@ -391,12 +394,12 @@ class ServiceLevel(pulumi.CustomResource):
391
394
 
392
395
  :param str resource_name: The name of the resource.
393
396
  :param pulumi.ResourceOptions opts: Options for the resource.
394
- :param pulumi.Input[str] description: The description of the SLI.
395
- :param pulumi.Input[pulumi.InputType['ServiceLevelEventsArgs']] events: The events that define the NRDB data for the SLI/SLO calculations.
397
+ :param pulumi.Input[_builtins.str] description: The description of the SLI.
398
+ :param pulumi.Input[Union['ServiceLevelEventsArgs', 'ServiceLevelEventsArgsDict']] events: The events that define the NRDB data for the SLI/SLO calculations.
396
399
  See Events below for details.
397
- :param pulumi.Input[str] guid: The GUID of the entity (e.g, APM Service, Browser application, Workload, etc.) that you want to relate this SLI to. Note that changing the GUID will force a new resource.
398
- :param pulumi.Input[str] name: A short name for the SLI that will help anyone understand what it is about.
399
- :param pulumi.Input[pulumi.InputType['ServiceLevelObjectiveArgs']] objective: The objective of the SLI, only one can be defined.
400
+ :param pulumi.Input[_builtins.str] guid: The GUID of the entity (e.g, APM Service, Browser application, Workload, etc.) that you want to relate this SLI to. Note that changing the GUID will force a new resource.
401
+ :param pulumi.Input[_builtins.str] name: A short name for the SLI that will help anyone understand what it is about.
402
+ :param pulumi.Input[Union['ServiceLevelObjectiveArgs', 'ServiceLevelObjectiveArgsDict']] objective: The objective of the SLI, only one can be defined.
400
403
  See Objective below for details.
401
404
  """
402
405
  ...
@@ -418,128 +421,125 @@ class ServiceLevel(pulumi.CustomResource):
418
421
 
419
422
  ## Example Usage
420
423
 
421
- <!--Start PulumiCodeChooser -->
422
424
  ```python
423
425
  import pulumi
424
426
  import pulumi_newrelic as newrelic
425
427
 
426
428
  foo = newrelic.ServiceLevel("foo",
427
- description="Proportion of requests that are served faster than a threshold.",
428
- events=newrelic.ServiceLevelEventsArgs(
429
- account_id=12345678,
430
- good_events=newrelic.ServiceLevelEventsGoodEventsArgs(
431
- from_="Transaction",
432
- where="appName = 'Example application' AND (transactionType= 'Web') AND duration < 0.1",
433
- ),
434
- valid_events=newrelic.ServiceLevelEventsValidEventsArgs(
435
- from_="Transaction",
436
- where="appName = 'Example application' AND (transactionType='Web')",
437
- ),
438
- ),
439
429
  guid="MXxBUE18QVBQTElDQVRJT058MQ",
440
- objective=newrelic.ServiceLevelObjectiveArgs(
441
- target=99,
442
- time_window=newrelic.ServiceLevelObjectiveTimeWindowArgs(
443
- rolling=newrelic.ServiceLevelObjectiveTimeWindowRollingArgs(
444
- count=7,
445
- unit="DAY",
446
- ),
447
- ),
448
- ))
430
+ name="Latency",
431
+ description="Proportion of requests that are served faster than a threshold.",
432
+ events={
433
+ "account_id": "12345678",
434
+ "valid_events": {
435
+ "from_": "Transaction",
436
+ "where": "appName = 'Example application' AND (transactionType='Web')",
437
+ },
438
+ "good_events": {
439
+ "from_": "Transaction",
440
+ "where": "appName = 'Example application' AND (transactionType= 'Web') AND duration < 0.1",
441
+ },
442
+ },
443
+ objective={
444
+ "target": 99,
445
+ "time_window": {
446
+ "rolling": {
447
+ "count": 7,
448
+ "unit": "DAY",
449
+ },
450
+ },
451
+ })
449
452
  ```
450
- <!--End PulumiCodeChooser -->
451
453
 
452
454
  ## Additional Example
453
455
 
454
456
  Service level with tags:
455
457
 
456
- <!--Start PulumiCodeChooser -->
457
458
  ```python
458
459
  import pulumi
459
460
  import pulumi_newrelic as newrelic
460
461
 
461
- my_synthetic_monitor_service_level = newrelic.ServiceLevel("mySyntheticMonitorServiceLevel",
462
+ my_synthetic_monitor_service_level = newrelic.ServiceLevel("my_synthetic_monitor_service_level",
462
463
  guid="MXxBUE18QVBQTElDQVRJT058MQ",
464
+ name="My synthethic monitor - Success",
463
465
  description="Proportion of successful synthetic checks.",
464
- events=newrelic.ServiceLevelEventsArgs(
465
- account_id=12345678,
466
- valid_events=newrelic.ServiceLevelEventsValidEventsArgs(
467
- from_="SyntheticCheck",
468
- where="entityGuid = 'MXxBUE18QVBQTElDQVRJT058MQ'",
469
- ),
470
- good_events=newrelic.ServiceLevelEventsGoodEventsArgs(
471
- from_="SyntheticCheck",
472
- where="entityGuid = 'MXxBUE18QVBQTElDQVRJT058MQ' AND result='SUCCESS'",
473
- ),
474
- ),
475
- objective=newrelic.ServiceLevelObjectiveArgs(
476
- target=99,
477
- time_window=newrelic.ServiceLevelObjectiveTimeWindowArgs(
478
- rolling=newrelic.ServiceLevelObjectiveTimeWindowRollingArgs(
479
- count=7,
480
- unit="DAY",
481
- ),
482
- ),
483
- ))
484
- my_synthetic_monitor_service_level_tags = newrelic.EntityTags("mySyntheticMonitorServiceLevelTags",
466
+ events={
467
+ "account_id": "12345678",
468
+ "valid_events": {
469
+ "from_": "SyntheticCheck",
470
+ "where": "entityGuid = 'MXxBUE18QVBQTElDQVRJT058MQ'",
471
+ },
472
+ "good_events": {
473
+ "from_": "SyntheticCheck",
474
+ "where": "entityGuid = 'MXxBUE18QVBQTElDQVRJT058MQ' AND result='SUCCESS'",
475
+ },
476
+ },
477
+ objective={
478
+ "target": 99,
479
+ "time_window": {
480
+ "rolling": {
481
+ "count": 7,
482
+ "unit": "DAY",
483
+ },
484
+ },
485
+ })
486
+ my_synthetic_monitor_service_level_tags = newrelic.EntityTags("my_synthetic_monitor_service_level_tags",
485
487
  guid=my_synthetic_monitor_service_level.sli_guid,
486
488
  tags=[
487
- newrelic.EntityTagsTagArgs(
488
- key="user_journey",
489
- values=[
489
+ {
490
+ "key": "user_journey",
491
+ "values": [
490
492
  "authentication",
491
493
  "sso",
492
494
  ],
493
- ),
494
- newrelic.EntityTagsTagArgs(
495
- key="owner",
496
- values=["identityTeam"],
497
- ),
495
+ },
496
+ {
497
+ "key": "owner",
498
+ "values": ["identityTeam"],
499
+ },
498
500
  ])
499
501
  ```
500
- <!--End PulumiCodeChooser -->
501
502
 
502
503
  Using `select` for events
503
504
 
504
- <!--Start PulumiCodeChooser -->
505
505
  ```python
506
506
  import pulumi
507
507
  import pulumi_newrelic as newrelic
508
508
 
509
- my_synthetic_monitor_duration_service_level = newrelic.ServiceLevel("mySyntheticMonitorDurationServiceLevel",
510
- description="Monitor created to test concurrent request from terraform",
511
- events=newrelic.ServiceLevelEventsArgs(
512
- account_id=313870,
513
- good_events=newrelic.ServiceLevelEventsGoodEventsArgs(
514
- from_="Metric",
515
- select=newrelic.ServiceLevelEventsGoodEventsSelectArgs(
516
- attribute="`query.wallClockTime.negative.distribution`",
517
- function="GET_CDF_COUNT",
518
- threshold=7,
519
- ),
520
- where="metricName = 'query.wallClockTime.negative.distribution'",
521
- ),
522
- valid_events=newrelic.ServiceLevelEventsValidEventsArgs(
523
- from_="Metric",
524
- select=newrelic.ServiceLevelEventsValidEventsSelectArgs(
525
- attribute="`query.wallClockTime.negative.distribution`",
526
- function="GET_FIELD",
527
- ),
528
- where="metricName = 'query.wallClockTime.negative.distribution'",
529
- ),
530
- ),
509
+ my_synthetic_monitor_duration_service_level = newrelic.ServiceLevel("my_synthetic_monitor_duration_service_level",
531
510
  guid="MXxBUE18QVBQTElDQVRJT058MQ",
532
- objective=newrelic.ServiceLevelObjectiveArgs(
533
- target=49,
534
- time_window=newrelic.ServiceLevelObjectiveTimeWindowArgs(
535
- rolling=newrelic.ServiceLevelObjectiveTimeWindowRollingArgs(
536
- count=7,
537
- unit="DAY",
538
- ),
539
- ),
540
- ))
511
+ name="Duration distribution is under 7",
512
+ description="Monitor created to test concurrent request from terraform",
513
+ events={
514
+ "account_id": "313870",
515
+ "valid_events": {
516
+ "from_": "Metric",
517
+ "select": {
518
+ "attribute": "`query.wallClockTime.negative.distribution`",
519
+ "function": "GET_FIELD",
520
+ },
521
+ "where": "metricName = 'query.wallClockTime.negative.distribution'",
522
+ },
523
+ "good_events": {
524
+ "from_": "Metric",
525
+ "select": {
526
+ "attribute": "`query.wallClockTime.negative.distribution`",
527
+ "function": "GET_CDF_COUNT",
528
+ "threshold": 7,
529
+ },
530
+ "where": "metricName = 'query.wallClockTime.negative.distribution'",
531
+ },
532
+ },
533
+ objective={
534
+ "target": 49,
535
+ "time_window": {
536
+ "rolling": {
537
+ "count": 7,
538
+ "unit": "DAY",
539
+ },
540
+ },
541
+ })
541
542
  ```
542
- <!--End PulumiCodeChooser -->
543
543
 
544
544
  For up-to-date documentation about the tagging resource, please check EntityTags
545
545
 
@@ -572,11 +572,11 @@ class ServiceLevel(pulumi.CustomResource):
572
572
  def _internal_init(__self__,
573
573
  resource_name: str,
574
574
  opts: Optional[pulumi.ResourceOptions] = None,
575
- description: Optional[pulumi.Input[str]] = None,
576
- events: Optional[pulumi.Input[pulumi.InputType['ServiceLevelEventsArgs']]] = None,
577
- guid: Optional[pulumi.Input[str]] = None,
578
- name: Optional[pulumi.Input[str]] = None,
579
- objective: Optional[pulumi.Input[pulumi.InputType['ServiceLevelObjectiveArgs']]] = None,
575
+ description: Optional[pulumi.Input[_builtins.str]] = None,
576
+ events: Optional[pulumi.Input[Union['ServiceLevelEventsArgs', 'ServiceLevelEventsArgsDict']]] = None,
577
+ guid: Optional[pulumi.Input[_builtins.str]] = None,
578
+ name: Optional[pulumi.Input[_builtins.str]] = None,
579
+ objective: Optional[pulumi.Input[Union['ServiceLevelObjectiveArgs', 'ServiceLevelObjectiveArgsDict']]] = None,
580
580
  __props__=None):
581
581
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
582
582
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -609,13 +609,13 @@ class ServiceLevel(pulumi.CustomResource):
609
609
  def get(resource_name: str,
610
610
  id: pulumi.Input[str],
611
611
  opts: Optional[pulumi.ResourceOptions] = None,
612
- description: Optional[pulumi.Input[str]] = None,
613
- events: Optional[pulumi.Input[pulumi.InputType['ServiceLevelEventsArgs']]] = None,
614
- guid: Optional[pulumi.Input[str]] = None,
615
- name: Optional[pulumi.Input[str]] = None,
616
- objective: Optional[pulumi.Input[pulumi.InputType['ServiceLevelObjectiveArgs']]] = None,
617
- sli_guid: Optional[pulumi.Input[str]] = None,
618
- sli_id: Optional[pulumi.Input[str]] = None) -> 'ServiceLevel':
612
+ description: Optional[pulumi.Input[_builtins.str]] = None,
613
+ events: Optional[pulumi.Input[Union['ServiceLevelEventsArgs', 'ServiceLevelEventsArgsDict']]] = None,
614
+ guid: Optional[pulumi.Input[_builtins.str]] = None,
615
+ name: Optional[pulumi.Input[_builtins.str]] = None,
616
+ objective: Optional[pulumi.Input[Union['ServiceLevelObjectiveArgs', 'ServiceLevelObjectiveArgsDict']]] = None,
617
+ sli_guid: Optional[pulumi.Input[_builtins.str]] = None,
618
+ sli_id: Optional[pulumi.Input[_builtins.str]] = None) -> 'ServiceLevel':
619
619
  """
620
620
  Get an existing ServiceLevel resource's state with the given name, id, and optional extra
621
621
  properties used to qualify the lookup.
@@ -623,15 +623,15 @@ class ServiceLevel(pulumi.CustomResource):
623
623
  :param str resource_name: The unique name of the resulting resource.
624
624
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
625
625
  :param pulumi.ResourceOptions opts: Options for the resource.
626
- :param pulumi.Input[str] description: The description of the SLI.
627
- :param pulumi.Input[pulumi.InputType['ServiceLevelEventsArgs']] events: The events that define the NRDB data for the SLI/SLO calculations.
626
+ :param pulumi.Input[_builtins.str] description: The description of the SLI.
627
+ :param pulumi.Input[Union['ServiceLevelEventsArgs', 'ServiceLevelEventsArgsDict']] events: The events that define the NRDB data for the SLI/SLO calculations.
628
628
  See Events below for details.
629
- :param pulumi.Input[str] guid: The GUID of the entity (e.g, APM Service, Browser application, Workload, etc.) that you want to relate this SLI to. Note that changing the GUID will force a new resource.
630
- :param pulumi.Input[str] name: A short name for the SLI that will help anyone understand what it is about.
631
- :param pulumi.Input[pulumi.InputType['ServiceLevelObjectiveArgs']] objective: The objective of the SLI, only one can be defined.
629
+ :param pulumi.Input[_builtins.str] guid: The GUID of the entity (e.g, APM Service, Browser application, Workload, etc.) that you want to relate this SLI to. Note that changing the GUID will force a new resource.
630
+ :param pulumi.Input[_builtins.str] name: A short name for the SLI that will help anyone understand what it is about.
631
+ :param pulumi.Input[Union['ServiceLevelObjectiveArgs', 'ServiceLevelObjectiveArgsDict']] objective: The objective of the SLI, only one can be defined.
632
632
  See Objective below for details.
633
- :param pulumi.Input[str] sli_guid: The unique entity identifier of the Service Level Indicator in New Relic.
634
- :param pulumi.Input[str] sli_id: The unique entity identifier of the Service Level Indicator.
633
+ :param pulumi.Input[_builtins.str] sli_guid: The unique entity identifier of the Service Level Indicator in New Relic.
634
+ :param pulumi.Input[_builtins.str] sli_id: The unique entity identifier of the Service Level Indicator.
635
635
  """
636
636
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
637
637
 
@@ -646,15 +646,15 @@ class ServiceLevel(pulumi.CustomResource):
646
646
  __props__.__dict__["sli_id"] = sli_id
647
647
  return ServiceLevel(resource_name, opts=opts, __props__=__props__)
648
648
 
649
- @property
649
+ @_builtins.property
650
650
  @pulumi.getter
651
- def description(self) -> pulumi.Output[Optional[str]]:
651
+ def description(self) -> pulumi.Output[Optional[_builtins.str]]:
652
652
  """
653
653
  The description of the SLI.
654
654
  """
655
655
  return pulumi.get(self, "description")
656
656
 
657
- @property
657
+ @_builtins.property
658
658
  @pulumi.getter
659
659
  def events(self) -> pulumi.Output['outputs.ServiceLevelEvents']:
660
660
  """
@@ -663,23 +663,23 @@ class ServiceLevel(pulumi.CustomResource):
663
663
  """
664
664
  return pulumi.get(self, "events")
665
665
 
666
- @property
666
+ @_builtins.property
667
667
  @pulumi.getter
668
- def guid(self) -> pulumi.Output[str]:
668
+ def guid(self) -> pulumi.Output[_builtins.str]:
669
669
  """
670
670
  The GUID of the entity (e.g, APM Service, Browser application, Workload, etc.) that you want to relate this SLI to. Note that changing the GUID will force a new resource.
671
671
  """
672
672
  return pulumi.get(self, "guid")
673
673
 
674
- @property
674
+ @_builtins.property
675
675
  @pulumi.getter
676
- def name(self) -> pulumi.Output[str]:
676
+ def name(self) -> pulumi.Output[_builtins.str]:
677
677
  """
678
678
  A short name for the SLI that will help anyone understand what it is about.
679
679
  """
680
680
  return pulumi.get(self, "name")
681
681
 
682
- @property
682
+ @_builtins.property
683
683
  @pulumi.getter
684
684
  def objective(self) -> pulumi.Output['outputs.ServiceLevelObjective']:
685
685
  """
@@ -688,17 +688,17 @@ class ServiceLevel(pulumi.CustomResource):
688
688
  """
689
689
  return pulumi.get(self, "objective")
690
690
 
691
- @property
691
+ @_builtins.property
692
692
  @pulumi.getter(name="sliGuid")
693
- def sli_guid(self) -> pulumi.Output[str]:
693
+ def sli_guid(self) -> pulumi.Output[_builtins.str]:
694
694
  """
695
695
  The unique entity identifier of the Service Level Indicator in New Relic.
696
696
  """
697
697
  return pulumi.get(self, "sli_guid")
698
698
 
699
- @property
699
+ @_builtins.property
700
700
  @pulumi.getter(name="sliId")
701
- def sli_id(self) -> pulumi.Output[str]:
701
+ def sli_id(self) -> pulumi.Output[_builtins.str]:
702
702
  """
703
703
  The unique entity identifier of the Service Level Indicator.
704
704
  """