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
@@ -0,0 +1,465 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins as _builtins
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
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
15
+ from . import _utilities
16
+
17
+ __all__ = ['KeyTransactionArgs', 'KeyTransaction']
18
+
19
+ @pulumi.input_type
20
+ class KeyTransactionArgs:
21
+ def __init__(__self__, *,
22
+ apdex_index: pulumi.Input[_builtins.float],
23
+ application_guid: pulumi.Input[_builtins.str],
24
+ browser_apdex_target: pulumi.Input[_builtins.float],
25
+ metric_name: pulumi.Input[_builtins.str],
26
+ name: Optional[pulumi.Input[_builtins.str]] = None):
27
+ """
28
+ The set of arguments for constructing a KeyTransaction resource.
29
+ :param pulumi.Input[_builtins.float] apdex_index: A decimal value, measuring user satisfaction with response times, ranging from 0 (frustrated) to 1 (satisfied).
30
+ :param pulumi.Input[_builtins.str] application_guid: The GUID of the APM Application comprising transactions, of which one would be made a key transaction.
31
+ :param pulumi.Input[_builtins.float] browser_apdex_target: A decimal value representing the response time threshold for satisfactory experience (e.g., 0.5 seconds).
32
+
33
+ > **NOTE:** It may be noted that the `metric_name` and `application_guid` of a Key Transaction _cannot_ be updated in a key transaction that has already been created; since this is not supported. As a consequence, altering the values of `application_guid` and/or `metric_name` of a `KeyTransaction` resource created (to try updating these values) would result in `pulumi preview` prompting a forced destruction and re-creation of the resource.
34
+ :param pulumi.Input[_builtins.str] metric_name: The name of the underlying metric monitored by the key transaction to be created.
35
+ :param pulumi.Input[_builtins.str] name: The name of the key transaction.
36
+ """
37
+ pulumi.set(__self__, "apdex_index", apdex_index)
38
+ pulumi.set(__self__, "application_guid", application_guid)
39
+ pulumi.set(__self__, "browser_apdex_target", browser_apdex_target)
40
+ pulumi.set(__self__, "metric_name", metric_name)
41
+ if name is not None:
42
+ pulumi.set(__self__, "name", name)
43
+
44
+ @_builtins.property
45
+ @pulumi.getter(name="apdexIndex")
46
+ def apdex_index(self) -> pulumi.Input[_builtins.float]:
47
+ """
48
+ A decimal value, measuring user satisfaction with response times, ranging from 0 (frustrated) to 1 (satisfied).
49
+ """
50
+ return pulumi.get(self, "apdex_index")
51
+
52
+ @apdex_index.setter
53
+ def apdex_index(self, value: pulumi.Input[_builtins.float]):
54
+ pulumi.set(self, "apdex_index", value)
55
+
56
+ @_builtins.property
57
+ @pulumi.getter(name="applicationGuid")
58
+ def application_guid(self) -> pulumi.Input[_builtins.str]:
59
+ """
60
+ The GUID of the APM Application comprising transactions, of which one would be made a key transaction.
61
+ """
62
+ return pulumi.get(self, "application_guid")
63
+
64
+ @application_guid.setter
65
+ def application_guid(self, value: pulumi.Input[_builtins.str]):
66
+ pulumi.set(self, "application_guid", value)
67
+
68
+ @_builtins.property
69
+ @pulumi.getter(name="browserApdexTarget")
70
+ def browser_apdex_target(self) -> pulumi.Input[_builtins.float]:
71
+ """
72
+ A decimal value representing the response time threshold for satisfactory experience (e.g., 0.5 seconds).
73
+
74
+ > **NOTE:** It may be noted that the `metric_name` and `application_guid` of a Key Transaction _cannot_ be updated in a key transaction that has already been created; since this is not supported. As a consequence, altering the values of `application_guid` and/or `metric_name` of a `KeyTransaction` resource created (to try updating these values) would result in `pulumi preview` prompting a forced destruction and re-creation of the resource.
75
+ """
76
+ return pulumi.get(self, "browser_apdex_target")
77
+
78
+ @browser_apdex_target.setter
79
+ def browser_apdex_target(self, value: pulumi.Input[_builtins.float]):
80
+ pulumi.set(self, "browser_apdex_target", value)
81
+
82
+ @_builtins.property
83
+ @pulumi.getter(name="metricName")
84
+ def metric_name(self) -> pulumi.Input[_builtins.str]:
85
+ """
86
+ The name of the underlying metric monitored by the key transaction to be created.
87
+ """
88
+ return pulumi.get(self, "metric_name")
89
+
90
+ @metric_name.setter
91
+ def metric_name(self, value: pulumi.Input[_builtins.str]):
92
+ pulumi.set(self, "metric_name", value)
93
+
94
+ @_builtins.property
95
+ @pulumi.getter
96
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
97
+ """
98
+ The name of the key transaction.
99
+ """
100
+ return pulumi.get(self, "name")
101
+
102
+ @name.setter
103
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
104
+ pulumi.set(self, "name", value)
105
+
106
+
107
+ @pulumi.input_type
108
+ class _KeyTransactionState:
109
+ def __init__(__self__, *,
110
+ apdex_index: Optional[pulumi.Input[_builtins.float]] = None,
111
+ application_guid: Optional[pulumi.Input[_builtins.str]] = None,
112
+ browser_apdex_target: Optional[pulumi.Input[_builtins.float]] = None,
113
+ domain: Optional[pulumi.Input[_builtins.str]] = None,
114
+ metric_name: Optional[pulumi.Input[_builtins.str]] = None,
115
+ name: Optional[pulumi.Input[_builtins.str]] = None,
116
+ type: Optional[pulumi.Input[_builtins.str]] = None):
117
+ """
118
+ Input properties used for looking up and filtering KeyTransaction resources.
119
+ :param pulumi.Input[_builtins.float] apdex_index: A decimal value, measuring user satisfaction with response times, ranging from 0 (frustrated) to 1 (satisfied).
120
+ :param pulumi.Input[_builtins.str] application_guid: The GUID of the APM Application comprising transactions, of which one would be made a key transaction.
121
+ :param pulumi.Input[_builtins.float] browser_apdex_target: A decimal value representing the response time threshold for satisfactory experience (e.g., 0.5 seconds).
122
+
123
+ > **NOTE:** It may be noted that the `metric_name` and `application_guid` of a Key Transaction _cannot_ be updated in a key transaction that has already been created; since this is not supported. As a consequence, altering the values of `application_guid` and/or `metric_name` of a `KeyTransaction` resource created (to try updating these values) would result in `pulumi preview` prompting a forced destruction and re-creation of the resource.
124
+ :param pulumi.Input[_builtins.str] domain: The domain of the entity monitored by the key transaction.
125
+ :param pulumi.Input[_builtins.str] metric_name: The name of the underlying metric monitored by the key transaction to be created.
126
+ :param pulumi.Input[_builtins.str] name: The name of the key transaction.
127
+ :param pulumi.Input[_builtins.str] type: The type of the entity monitored by the key transaction.
128
+ """
129
+ if apdex_index is not None:
130
+ pulumi.set(__self__, "apdex_index", apdex_index)
131
+ if application_guid is not None:
132
+ pulumi.set(__self__, "application_guid", application_guid)
133
+ if browser_apdex_target is not None:
134
+ pulumi.set(__self__, "browser_apdex_target", browser_apdex_target)
135
+ if domain is not None:
136
+ pulumi.set(__self__, "domain", domain)
137
+ if metric_name is not None:
138
+ pulumi.set(__self__, "metric_name", metric_name)
139
+ if name is not None:
140
+ pulumi.set(__self__, "name", name)
141
+ if type is not None:
142
+ pulumi.set(__self__, "type", type)
143
+
144
+ @_builtins.property
145
+ @pulumi.getter(name="apdexIndex")
146
+ def apdex_index(self) -> Optional[pulumi.Input[_builtins.float]]:
147
+ """
148
+ A decimal value, measuring user satisfaction with response times, ranging from 0 (frustrated) to 1 (satisfied).
149
+ """
150
+ return pulumi.get(self, "apdex_index")
151
+
152
+ @apdex_index.setter
153
+ def apdex_index(self, value: Optional[pulumi.Input[_builtins.float]]):
154
+ pulumi.set(self, "apdex_index", value)
155
+
156
+ @_builtins.property
157
+ @pulumi.getter(name="applicationGuid")
158
+ def application_guid(self) -> Optional[pulumi.Input[_builtins.str]]:
159
+ """
160
+ The GUID of the APM Application comprising transactions, of which one would be made a key transaction.
161
+ """
162
+ return pulumi.get(self, "application_guid")
163
+
164
+ @application_guid.setter
165
+ def application_guid(self, value: Optional[pulumi.Input[_builtins.str]]):
166
+ pulumi.set(self, "application_guid", value)
167
+
168
+ @_builtins.property
169
+ @pulumi.getter(name="browserApdexTarget")
170
+ def browser_apdex_target(self) -> Optional[pulumi.Input[_builtins.float]]:
171
+ """
172
+ A decimal value representing the response time threshold for satisfactory experience (e.g., 0.5 seconds).
173
+
174
+ > **NOTE:** It may be noted that the `metric_name` and `application_guid` of a Key Transaction _cannot_ be updated in a key transaction that has already been created; since this is not supported. As a consequence, altering the values of `application_guid` and/or `metric_name` of a `KeyTransaction` resource created (to try updating these values) would result in `pulumi preview` prompting a forced destruction and re-creation of the resource.
175
+ """
176
+ return pulumi.get(self, "browser_apdex_target")
177
+
178
+ @browser_apdex_target.setter
179
+ def browser_apdex_target(self, value: Optional[pulumi.Input[_builtins.float]]):
180
+ pulumi.set(self, "browser_apdex_target", value)
181
+
182
+ @_builtins.property
183
+ @pulumi.getter
184
+ def domain(self) -> Optional[pulumi.Input[_builtins.str]]:
185
+ """
186
+ The domain of the entity monitored by the key transaction.
187
+ """
188
+ return pulumi.get(self, "domain")
189
+
190
+ @domain.setter
191
+ def domain(self, value: Optional[pulumi.Input[_builtins.str]]):
192
+ pulumi.set(self, "domain", value)
193
+
194
+ @_builtins.property
195
+ @pulumi.getter(name="metricName")
196
+ def metric_name(self) -> Optional[pulumi.Input[_builtins.str]]:
197
+ """
198
+ The name of the underlying metric monitored by the key transaction to be created.
199
+ """
200
+ return pulumi.get(self, "metric_name")
201
+
202
+ @metric_name.setter
203
+ def metric_name(self, value: Optional[pulumi.Input[_builtins.str]]):
204
+ pulumi.set(self, "metric_name", value)
205
+
206
+ @_builtins.property
207
+ @pulumi.getter
208
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
209
+ """
210
+ The name of the key transaction.
211
+ """
212
+ return pulumi.get(self, "name")
213
+
214
+ @name.setter
215
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
216
+ pulumi.set(self, "name", value)
217
+
218
+ @_builtins.property
219
+ @pulumi.getter
220
+ def type(self) -> Optional[pulumi.Input[_builtins.str]]:
221
+ """
222
+ The type of the entity monitored by the key transaction.
223
+ """
224
+ return pulumi.get(self, "type")
225
+
226
+ @type.setter
227
+ def type(self, value: Optional[pulumi.Input[_builtins.str]]):
228
+ pulumi.set(self, "type", value)
229
+
230
+
231
+ @pulumi.type_token("newrelic:index/keyTransaction:KeyTransaction")
232
+ class KeyTransaction(pulumi.CustomResource):
233
+ @overload
234
+ def __init__(__self__,
235
+ resource_name: str,
236
+ opts: Optional[pulumi.ResourceOptions] = None,
237
+ apdex_index: Optional[pulumi.Input[_builtins.float]] = None,
238
+ application_guid: Optional[pulumi.Input[_builtins.str]] = None,
239
+ browser_apdex_target: Optional[pulumi.Input[_builtins.float]] = None,
240
+ metric_name: Optional[pulumi.Input[_builtins.str]] = None,
241
+ name: Optional[pulumi.Input[_builtins.str]] = None,
242
+ __props__=None):
243
+ """
244
+ Use this resource to create a new Key Transaction in New Relic.
245
+
246
+ > **NOTE:** For more information on Key Transactions, head over to [this page](https://docs.newrelic.com/docs/apm/transactions/key-transactions/introduction-key-transactions/) in New Relic's docs.
247
+
248
+ ## Example Usage
249
+
250
+ ```python
251
+ import pulumi
252
+ import pulumi_newrelic as newrelic
253
+
254
+ foo = newrelic.KeyTransaction("foo",
255
+ application_guid="MzgfNjUyNnxBUE19QVBQTElDQVHJT068NTUfNDT4MjUy",
256
+ apdex_index=0.5,
257
+ browser_apdex_target=0.5,
258
+ metric_name="WebTransaction/Function/__main__:foo_bar",
259
+ name="Sample Key Transaction")
260
+ ```
261
+
262
+ ## Import
263
+
264
+ A Key Transaction in New Relic may be imported into Terraform using its GUID specified in the `<id>` field, in the following command.
265
+
266
+ bash
267
+
268
+ ```sh
269
+ $ pulumi import newrelic:index/keyTransaction:KeyTransaction foo <id>
270
+ ```
271
+
272
+ :param str resource_name: The name of the resource.
273
+ :param pulumi.ResourceOptions opts: Options for the resource.
274
+ :param pulumi.Input[_builtins.float] apdex_index: A decimal value, measuring user satisfaction with response times, ranging from 0 (frustrated) to 1 (satisfied).
275
+ :param pulumi.Input[_builtins.str] application_guid: The GUID of the APM Application comprising transactions, of which one would be made a key transaction.
276
+ :param pulumi.Input[_builtins.float] browser_apdex_target: A decimal value representing the response time threshold for satisfactory experience (e.g., 0.5 seconds).
277
+
278
+ > **NOTE:** It may be noted that the `metric_name` and `application_guid` of a Key Transaction _cannot_ be updated in a key transaction that has already been created; since this is not supported. As a consequence, altering the values of `application_guid` and/or `metric_name` of a `KeyTransaction` resource created (to try updating these values) would result in `pulumi preview` prompting a forced destruction and re-creation of the resource.
279
+ :param pulumi.Input[_builtins.str] metric_name: The name of the underlying metric monitored by the key transaction to be created.
280
+ :param pulumi.Input[_builtins.str] name: The name of the key transaction.
281
+ """
282
+ ...
283
+ @overload
284
+ def __init__(__self__,
285
+ resource_name: str,
286
+ args: KeyTransactionArgs,
287
+ opts: Optional[pulumi.ResourceOptions] = None):
288
+ """
289
+ Use this resource to create a new Key Transaction in New Relic.
290
+
291
+ > **NOTE:** For more information on Key Transactions, head over to [this page](https://docs.newrelic.com/docs/apm/transactions/key-transactions/introduction-key-transactions/) in New Relic's docs.
292
+
293
+ ## Example Usage
294
+
295
+ ```python
296
+ import pulumi
297
+ import pulumi_newrelic as newrelic
298
+
299
+ foo = newrelic.KeyTransaction("foo",
300
+ application_guid="MzgfNjUyNnxBUE19QVBQTElDQVHJT068NTUfNDT4MjUy",
301
+ apdex_index=0.5,
302
+ browser_apdex_target=0.5,
303
+ metric_name="WebTransaction/Function/__main__:foo_bar",
304
+ name="Sample Key Transaction")
305
+ ```
306
+
307
+ ## Import
308
+
309
+ A Key Transaction in New Relic may be imported into Terraform using its GUID specified in the `<id>` field, in the following command.
310
+
311
+ bash
312
+
313
+ ```sh
314
+ $ pulumi import newrelic:index/keyTransaction:KeyTransaction foo <id>
315
+ ```
316
+
317
+ :param str resource_name: The name of the resource.
318
+ :param KeyTransactionArgs args: The arguments to use to populate this resource's properties.
319
+ :param pulumi.ResourceOptions opts: Options for the resource.
320
+ """
321
+ ...
322
+ def __init__(__self__, resource_name: str, *args, **kwargs):
323
+ resource_args, opts = _utilities.get_resource_args_opts(KeyTransactionArgs, pulumi.ResourceOptions, *args, **kwargs)
324
+ if resource_args is not None:
325
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
326
+ else:
327
+ __self__._internal_init(resource_name, *args, **kwargs)
328
+
329
+ def _internal_init(__self__,
330
+ resource_name: str,
331
+ opts: Optional[pulumi.ResourceOptions] = None,
332
+ apdex_index: Optional[pulumi.Input[_builtins.float]] = None,
333
+ application_guid: Optional[pulumi.Input[_builtins.str]] = None,
334
+ browser_apdex_target: Optional[pulumi.Input[_builtins.float]] = None,
335
+ metric_name: Optional[pulumi.Input[_builtins.str]] = None,
336
+ name: Optional[pulumi.Input[_builtins.str]] = None,
337
+ __props__=None):
338
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
339
+ if not isinstance(opts, pulumi.ResourceOptions):
340
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
341
+ if opts.id is None:
342
+ if __props__ is not None:
343
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
344
+ __props__ = KeyTransactionArgs.__new__(KeyTransactionArgs)
345
+
346
+ if apdex_index is None and not opts.urn:
347
+ raise TypeError("Missing required property 'apdex_index'")
348
+ __props__.__dict__["apdex_index"] = apdex_index
349
+ if application_guid is None and not opts.urn:
350
+ raise TypeError("Missing required property 'application_guid'")
351
+ __props__.__dict__["application_guid"] = application_guid
352
+ if browser_apdex_target is None and not opts.urn:
353
+ raise TypeError("Missing required property 'browser_apdex_target'")
354
+ __props__.__dict__["browser_apdex_target"] = browser_apdex_target
355
+ if metric_name is None and not opts.urn:
356
+ raise TypeError("Missing required property 'metric_name'")
357
+ __props__.__dict__["metric_name"] = metric_name
358
+ __props__.__dict__["name"] = name
359
+ __props__.__dict__["domain"] = None
360
+ __props__.__dict__["type"] = None
361
+ super(KeyTransaction, __self__).__init__(
362
+ 'newrelic:index/keyTransaction:KeyTransaction',
363
+ resource_name,
364
+ __props__,
365
+ opts)
366
+
367
+ @staticmethod
368
+ def get(resource_name: str,
369
+ id: pulumi.Input[str],
370
+ opts: Optional[pulumi.ResourceOptions] = None,
371
+ apdex_index: Optional[pulumi.Input[_builtins.float]] = None,
372
+ application_guid: Optional[pulumi.Input[_builtins.str]] = None,
373
+ browser_apdex_target: Optional[pulumi.Input[_builtins.float]] = None,
374
+ domain: Optional[pulumi.Input[_builtins.str]] = None,
375
+ metric_name: Optional[pulumi.Input[_builtins.str]] = None,
376
+ name: Optional[pulumi.Input[_builtins.str]] = None,
377
+ type: Optional[pulumi.Input[_builtins.str]] = None) -> 'KeyTransaction':
378
+ """
379
+ Get an existing KeyTransaction resource's state with the given name, id, and optional extra
380
+ properties used to qualify the lookup.
381
+
382
+ :param str resource_name: The unique name of the resulting resource.
383
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
384
+ :param pulumi.ResourceOptions opts: Options for the resource.
385
+ :param pulumi.Input[_builtins.float] apdex_index: A decimal value, measuring user satisfaction with response times, ranging from 0 (frustrated) to 1 (satisfied).
386
+ :param pulumi.Input[_builtins.str] application_guid: The GUID of the APM Application comprising transactions, of which one would be made a key transaction.
387
+ :param pulumi.Input[_builtins.float] browser_apdex_target: A decimal value representing the response time threshold for satisfactory experience (e.g., 0.5 seconds).
388
+
389
+ > **NOTE:** It may be noted that the `metric_name` and `application_guid` of a Key Transaction _cannot_ be updated in a key transaction that has already been created; since this is not supported. As a consequence, altering the values of `application_guid` and/or `metric_name` of a `KeyTransaction` resource created (to try updating these values) would result in `pulumi preview` prompting a forced destruction and re-creation of the resource.
390
+ :param pulumi.Input[_builtins.str] domain: The domain of the entity monitored by the key transaction.
391
+ :param pulumi.Input[_builtins.str] metric_name: The name of the underlying metric monitored by the key transaction to be created.
392
+ :param pulumi.Input[_builtins.str] name: The name of the key transaction.
393
+ :param pulumi.Input[_builtins.str] type: The type of the entity monitored by the key transaction.
394
+ """
395
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
396
+
397
+ __props__ = _KeyTransactionState.__new__(_KeyTransactionState)
398
+
399
+ __props__.__dict__["apdex_index"] = apdex_index
400
+ __props__.__dict__["application_guid"] = application_guid
401
+ __props__.__dict__["browser_apdex_target"] = browser_apdex_target
402
+ __props__.__dict__["domain"] = domain
403
+ __props__.__dict__["metric_name"] = metric_name
404
+ __props__.__dict__["name"] = name
405
+ __props__.__dict__["type"] = type
406
+ return KeyTransaction(resource_name, opts=opts, __props__=__props__)
407
+
408
+ @_builtins.property
409
+ @pulumi.getter(name="apdexIndex")
410
+ def apdex_index(self) -> pulumi.Output[_builtins.float]:
411
+ """
412
+ A decimal value, measuring user satisfaction with response times, ranging from 0 (frustrated) to 1 (satisfied).
413
+ """
414
+ return pulumi.get(self, "apdex_index")
415
+
416
+ @_builtins.property
417
+ @pulumi.getter(name="applicationGuid")
418
+ def application_guid(self) -> pulumi.Output[_builtins.str]:
419
+ """
420
+ The GUID of the APM Application comprising transactions, of which one would be made a key transaction.
421
+ """
422
+ return pulumi.get(self, "application_guid")
423
+
424
+ @_builtins.property
425
+ @pulumi.getter(name="browserApdexTarget")
426
+ def browser_apdex_target(self) -> pulumi.Output[_builtins.float]:
427
+ """
428
+ A decimal value representing the response time threshold for satisfactory experience (e.g., 0.5 seconds).
429
+
430
+ > **NOTE:** It may be noted that the `metric_name` and `application_guid` of a Key Transaction _cannot_ be updated in a key transaction that has already been created; since this is not supported. As a consequence, altering the values of `application_guid` and/or `metric_name` of a `KeyTransaction` resource created (to try updating these values) would result in `pulumi preview` prompting a forced destruction and re-creation of the resource.
431
+ """
432
+ return pulumi.get(self, "browser_apdex_target")
433
+
434
+ @_builtins.property
435
+ @pulumi.getter
436
+ def domain(self) -> pulumi.Output[_builtins.str]:
437
+ """
438
+ The domain of the entity monitored by the key transaction.
439
+ """
440
+ return pulumi.get(self, "domain")
441
+
442
+ @_builtins.property
443
+ @pulumi.getter(name="metricName")
444
+ def metric_name(self) -> pulumi.Output[_builtins.str]:
445
+ """
446
+ The name of the underlying metric monitored by the key transaction to be created.
447
+ """
448
+ return pulumi.get(self, "metric_name")
449
+
450
+ @_builtins.property
451
+ @pulumi.getter
452
+ def name(self) -> pulumi.Output[_builtins.str]:
453
+ """
454
+ The name of the key transaction.
455
+ """
456
+ return pulumi.get(self, "name")
457
+
458
+ @_builtins.property
459
+ @pulumi.getter
460
+ def type(self) -> pulumi.Output[_builtins.str]:
461
+ """
462
+ The type of the entity monitored by the key transaction.
463
+ """
464
+ return pulumi.get(self, "type")
465
+